2018/2/9
java
1:关于java继承
1.默认先调用父类构造,再调用子类构造;
2.父类的构造方法和私有(private)属性是无法继承的;
3.在java中只能继承一个父类
4.使用super()来调用父类方法
2:关于方法的重写override
1.使用在通过继承而相关的不同类中
2.方法重写实现后,子类和父类的有着相同的方法签名(方法名加参数表列)和返回值类型
3.override称为重写标注(在eclipse中使用ALT+?实现方法的重写),保证重写后和原方法返回值一致
package package2;
/*java小测试
* 基类:Animal类,实现name,sleep(),eat()三个方法
* 子类1:猪类:实现上树功能
* 子类2:龟类:实现游泳功能*/
public class Animal
{
private String name;
public void sleep()
{
System.out.println("今天我睡了十五个小时");
}
public void eat()
{
System.out.println("今天我吃了红烧肉呀");
}
public void drool()
{
System.out.println("HUA HUA HUA");
}
public Animal()
{
}
public Animal(String name)
{
this.name=name;
}
public String getName() {
return name;
}
public void setName(String name)
{
this.name = name;
}
}
package package2;
public class Pig extends Animal
{
public Pig()
{
}
@Override
public void eat() {
System.out.println("猪猪最爱吃红烧肉");
}
public Pig(String nickName)
{
setName(nickName);
}
public void climb()
{
System.out.println("母猪会上树");
}
}
package package2;
public class Turtle extends Animal
{
public Turtle()
{
}
public Turtle(String nickName)
{
setName(nickName);
}
public void swim()
{
System.out.println("总有一天我要超越孙杨");
}
@Override
public void eat() {
System.out.println("龟龟最爱吃鱼");
super.eat();
}
}
package package2;
public class text
{
public static void main(String[] args)
{
System.out.println("猪类");
Pig pig1=new Pig("猪猪");
System.out.println("它的名字是"+pig1.getName());
pig1.climb();
pig1.eat();
pig1.drool();
pig1.sleep();
System.out.println("龟类");
Turtle turtle1=new Turtle("龟龟");
System.out.println("它的名字是"+turtle1.getName());
turtle1.swim();
turtle1.eat();
turtle1.drool();
turtle1.sleep();
}
}