潍坊网站建设公司,莱芜大集,一个网站需要多少空间,一级a做片免费网站类与对象
继承例题
https://www.bilibili.com/video/BV1PU4y1E7nX?p55vd_source8f80327daa664c039f5c342a25bcbbae#xff08;B站千峰马剑威Java基础入门视频第P55#xff0c;记录的重要学习内容之一#xff09;
final关键字
作用#xff1a;
声明一个常量…类与对象
继承例题
https://www.bilibili.com/video/BV1PU4y1E7nX?p55vd_source8f80327daa664c039f5c342a25bcbbaeB站千峰马剑威Java基础入门视频第P55记录的重要学习内容之一
final关键字
作用
声明一个常量常用规范命名建议全大写修饰属性或修饰局部变量最终变量也成常量不能改变声明一个方法该方法为最终方法且只能被子类继承但是不能被子类重写声明一个类该类为最终类没有子类的类无法被继承在方法参数中使用在内部类中不能修改参数值在内部类中详解。
public class Test{public static void main(String[] args){System.out.println(Constant.TEN_NUM);}
}
//常量类,常量可以另起一类定义防止访问时出问题
public final class Constant{public static final int TEN_NUM 10;//常量通常这么定义权限自定义
}抽象类
很多具有相同特征的和行为的对象可以抽象为一个类很多和相同特征和行为的类可以抽象为一个抽象类使用abstract关键字声明类为抽象类。 抽象类中有抽象方法、成员变量、构造方法和其他成员方法。 抽象类中的抽象方法即只有定义没有实现也就是没有大括号的内容直接把大括号换位了分号然后在具体类中重写方法实现方法的具体功能也就是说抽象类本身并不能运行也不能被实例化就是用来作为父类被继承的。 抽象类不能个被声明为final
public class Test{public static void main(String[] args){Villa villa new Villa();villa.color();villa.buildFloor();villa.buildTepy();}
}
public abstract class Building{private String name;private int age;public Building(String name) {this.name name;} // 抽象方法 没有方法的实现public abstract void buildTepy();//成员方法public void color() {System.out.println(colorful);}
}
//抽象方法可以继承抽象方法
public abstract class House extends Building{public abstract void buildFloor();
}
public class Villa extends House{Overridepublic void color() {// TODO Auto-generated method stubSystem.out.println(red);}//在子类中实现Overridepublic void buildTepy(){System.out.println(别墅);}Overridepublic void buildFloor(){System.out.println(3层);}
}接口
接口方便我们拓展代码如果写好的系统想去添加功能不用去找代码的相关模块并修改直接使用接口添加然后在主函数中电泳即可。 接口相当于特殊的抽象类接口里面都是抽象方法通过接口不能创建对象。 定义格式 修饰符 interface 接口名 { 常量 抽象方法 default修饰的方法 static 修饰的方法 }
public class Test{public static void main(String[] args){Villa villa new Villa();villa.color();villa.buildFloor();villa.buildTepy();}
}//与抽象类类似接口类也可以被继承这里不再写出有兴趣可以尝试
public abstract class House{void buildFloor();//接口方法中可以不用修饰符默认为public abstractvoid buildTepy();void color();//JDK1.8之后可用public default void print(){System.out.println(default);}
}
public class Villa extends House{Overridepublic void color() {// TODO Auto-generated method stubSystem.out.println(red);}//在子类中实现Overridepublic void buildTepy(){System.out.println(别墅);}Overridepublic void buildFloor(){System.out.println(3层);}
}多态
多态性是对象在运行的过程中的多种形态。父类变量可以引用子类的对象调用相同的方法展示多种形态(表现不一样)方法的重载和重写也是多态。 例Dog dog new SingleDog(); 对象的多态性 **向上转型**将子类实例转为父类引用会自动转换父类 父类对象 子类实例 例int i ‘a’ **向下转型**将父类实例转为子类引用强制转换 子类 子类对象 父类实例 例char c (char)97;
instanceof关键字
用于检查对象是否为指定的类型通常把父类强制转换为子类引用时要使用以避免发生类型转换异常。 对象 instanceof 类型 返回boolean类型值 例
if(singleDog instanceof Dog){}一般用于判断一个对象是否为某个类的实例。