#千峯JAVA逆戰班,4月1日#

在千峯逆戰班學習的第17天;
JAVA_DAY14;
今天學習的課程:面向對象的三大特性的封裝性,繼承性;
中國加油!世界加油!
我自己加油!

JVM主函數:

package com.qf.demo03_inherit;
/*
 * 父類:Animal
 * 	屬性:name,age
 * 	方法:eat(),sleep()
 * 
 * 子類:Cat
 * 	新增屬性:color
 * 	新增方法:catchMouse()
 * 
 * 子類:Dog
 * 	新增方法:lookHome()
 */
public class Test5 {

	public static void main(String[] args) {
		//1.創建父類的對象:可以訪問父類的屬性和方法。
		Animal a1 = new Animal("",1);
		
		System.out.println(a1.getName());
		System.out.println(a1.getAge());
		a1.eat();
		a1.sleep();
		
		//2.創建子類對象:
		Cat c1 = new Cat();
		c1.setName("小花");//訪問父類的屬性
		c1.setAge(2);
		c1.setColor("黑白");//訪問子類的屬性
		System.out.println(c1.getName());
		System.out.println(c1.getAge());
		System.out.println(c1.getColor());
		
		c1.eat();//訪問父類的方法
		c1.sleep();//訪問父類的方法
		c1.catchMouse();//子類新增的方法
		
		
		Dog d1 = new Dog();
		
		System.out.println("-------------");
		Cat c2 = new Cat("嘟嘟", 3, "橘色");
		System.out.println(c2.getName());
		System.out.println(c2.getAge());
		System.out.println(c2.getColor());
		

	}

}

父類

package com.qf.demo03_inherit;


/*
 * 父類:Animal
 * name,age
 * eat(),sleep()
 */
public class Animal {
	private String name; 
	private int age;
	
	
	//有參構造方法
	public Animal(String name,int age){
		this.name = name;
		this.age = age;
		System.out.println("父類Animal的有參構造方法。。");
	}
	
	public Animal(){
		System.out.println("父類Animal的無參構造方法。。。");
	}
	
	
	
	public void eat(){
		System.out.println("吃東西啦。。。");
	}
	public void sleep(){
		System.out.println("睡着啦。。");
	}
	
	
	
	public void setName(String name){
		this.name = name;
	}
	public String getName(){
		return this.name;
	}
	public void setAge(int age){
		this.age = age;
	}
	public int getAge(){
		return this.age;
	}
}

cat子類

package com.qf.demo03_inherit;


public class Cat extends Animal{//name,age,color
	private String color;
	
	
	
	public Cat(){
		//子類的構造方法的第一行,默認會調用父類的構造方法:默認無參
		super();//表示父類的構造方法。此行代碼,可以省略不寫,編譯器會自動添加的。
		System.out.println("Cat類的無參構造方法。。。");
	}
	
	
	public Cat(String name,int age,String color){
		//super();//編譯器默認添加的都是無參的構造方法。。
		super(name, age);//父類的有參構造
		this.color = color;
		
		System.out.println("Cat類的有參構造方法。。");
	}
	

	public void catchMouse(){
		System.out.println("小貓抓老鼠。。");
	}
	
	public void setColor(String color){
		this.color = color;
	}
	
	public String getColor(){
		return this.color;
	}
}

dog子類

package com.qf.demo03_inherit;

public class Dog extends Animal {
	
	public Dog(){
		//super();//父類的無參的構造方法
	}
	
	public void lookHome(){
		System.out.println("小狗看家。。");
	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章