Java修饰符,类,对象

public class Pet{
    protected String name;
    protected int health;
    protected String color; 
}

默认protected,public不管是包内包外,还是对象、class,都可以调用public属性和方法

private  在private所在的class内部,都可以调用,class外部,都不可以调用

protected的设计初衷,就是子类调用父类的属性,不能被包外对象调用,可以被包内对象调用

Dog dog = new Dog("旺财");

new Dog()会创建两块内存,先分配父类的内存,然后分配子类的内存

父类如果是有参构造,则参数必须由子类的构造函数传入

Pet dog = new Dog("旺财");

 new Dog()一次分配了两块内存,dog中存在的是父类内存的首地址

Pet dog;表示dog只能指向父类的内存空间,不能指向子类的内存空间

Pet dog = new Dog("旺财");
Dog d = (Dog)dog;          //父类的引用,要访问子类对象的内存,需要进行指针的强制转换
System.out.println(d.strain);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值