public class ExtendsStu {
/*动物类:动物都可以动
* 1.Dog 2.Cat
* 在java中,子类可以继承父类的属性和功能;
* 继承关系的指定: 子类 extends 父类
* 不能被继承的资源:
* 1.子类不能继承父类的构造方法,而且必须调用一个父类的构造器(因为生成子类对象的时候会初始化父类属性)
* 2.私有的资源不能被继承
* 特殊的资源:
* 1.静态的资源是可以被继承的
* 拓展:
* protected修饰的资源可以在子类中被访问;(跨包继承的情况下,只能在子类内部访问)
* 继承的注意点:
* 1.java中的类的继承是单继承;一个父类可以有n个子类
* 2.子类构造器必须调用父类构造器
* 3.当子类有与父类同名的属性的时候,子类对象this访问的是自己的属性
* 4.生成子类对象的时候会携带继承连上的所有资源;
*/
public static void main(String[] args)
{
Rose rose = new Rose();
rose.type = "玫瑰";
rose.sendPeople();
//rose.smile = '香';
Rose.colorFul = true;
}
}
class Flower {
public String type;
String color;
protected double size;
static boolean colorFul;
private char smile;
public Flower(){}
public Flower(String type, String color, double size, boolean colorFul, char smile)
{
//super();
System.out.println("调用了父类有参构造器");
this.type = type;
this.color = color;
this.size = size;
this.colorFul = colorFul;
this.smile = smile;
}
String color;
protected double size;
static boolean colorFul;
private char smile;
public Flower(){}
public Flower(String type, String color, double size, boolean colorFul, char smile)
{
//super();
System.out.println("调用了父类有参构造器");
this.type = type;
this.color = color;
this.size = size;
this.colorFul = colorFul;
this.smile = smile;
}
public void sendPeople(){
System.out.println(type+"被送人了");
}
private void demo(){
System.out.println("我是父类私有的方法");
}
}
System.out.println(type+"被送人了");
}
private void demo(){
System.out.println("我是父类私有的方法");
}
}
class Rose extends Flower{
public void hello(){
System.out.println("您好,我的气味");
//this.demo();不能继承父类私有的方法
}
}
System.out.println("您好,我的气味");
//this.demo();不能继承父类私有的方法
}
}
更多java知识请访问:
How2J 的 Java教程