java第十一天

对象之间的关键:

继承:

1.java中的继承都是单继承,就是每个子类只有一个父类

2.java可以多层继承

3.父类中的私有变量不能被子类所继承,但是属性可以被继承

4.方法的覆盖(重写)子类重新覆盖父类的中函数,功能的扩展。

5.当子类要调用父类方法时,用super就可以调用。

6.当子类创建实例时,父类的构造函数也会被调用。

7.super(),可以调用父类中对应参数的构造函数必须放在第一位

final关键字:

1.可以修饰变量,变量就变成常量

2.可以修饰函数,函数就不能被重写

3.可以修饰类,类就不能被继承。

/**
	对象之间的关系:
		继承:
			1.java中的继承都是单继承,就是每个子类只有能有一个父类。
			2.java中可以多层继承。
			3.父类的私有变量不能被子类所继承,但是属性可以被继承。
			4.方法的覆写、重写
			5.当子类要调用父类的方法,用super就就可以调用。
			6.当子类创建实例时,父类(父类的父类)的构造函数也会被调用!
			7.super()可以调用父类中对应参数的构造函数,必须要放在第一行
		多态

*/
class  JavaDemo31
{
	public static void main(String[] args) 
	{
		//System.out.println("Hello World!");
		Dog dog = new Dog();
		Pig pig = new Pig();
		dog.run();
		pig.run();
		dog.test1();
		dog.setName("小黑");
		System.out.println(dog.getName());
		dog.test2();

		Dog dog2 = new Dog("小花",2);
		System.out.println(dog2.getName());
	}
}


class AA
{
	public AA(){
		System.out.println("AA构造函数");
	}

	public void test1(){
		System.out.println("test");
	}
}
class Animal extends AA
{
	

	private String name;
	private int age;
	
	public Animal(){
		System.out.println("Animal构造函数!");
	}

	public Animal(String name,int age){
		this.name = name;
		this.age = age;
	}

	public void setName(String name){
		this.name = name;
	}
	
	public String getName(){
		return this.name;
	}

	public void run(){
		System.out.println("跑");
	}
	public void eat(){

	}
}

class Dog extends Animal
{
	public Dog(){
		System.out.println("dog构造函数");
	}
	public Dog(String name,int age){
		//System.out.println("!!!!!!!!!!!!!!!!!");
		super(name,age);//
	}

	//重写了父类的方法,就近原则
	public void run(){
		System.out.println("小狗跑");
	}
	public void test2(){
		//run();
		//this.run();
		System.out.println(".......");
		super.run();//super();this()
	}
}

class Pig extends Animal
{

	
}
/**
	final关键字:
		1.可以修饰变量,变量就变成常量
		2.可以修饰函数,函数就不能被重写
		3.可以修饰类,类就不能被继承
*/

class JavaDemo32 
	
{
	public final static  double PI =3.1415926;
	public static void main(String[] args) 
	{
		//DDD ddd = new DDD()
		new DDD().test1();//匿名对象实例,适用于只用一次的情况!
	}
}


class CCC
{
	public void test1(){
		System.out.println("test1");
	}
}

class DDD
{
	public void test1(){
		System.out.println("test1!!!!!!!!!!!!!!!");
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值