黑马程序员技术交流社区
标题:
【关于】抽象类中的私有属性能在子类中访问到吗?
[打印本页]
作者:
wkz_crystal
时间:
2015-3-14 00:46
标题:
【关于】抽象类中的私有属性能在子类中访问到吗?
//定义个抽象类 人(Person)
abstract class Person
{
//人共同具有的属性有:姓名,年龄,性别
String name; //
(就是这里的属性如果用private定义,在子类中能访问到吗??)
int age;
String sex;
//构造方法的初始化
Person(String name,int age,String sex)
{
this.name=name;
this.age=age;
this.sex=sex;
}
//人共同的行为说话,没有主体,因为每个人说话的具体内容不知道
abstract void speak();
}
//小红的爸爸继承了抽象的人类型,并且实现接口中工作的功能
class HongFather extends Person implements InterFaceDemo
{
HongFather(String name,int age,String sex)
{
super(name,age,sex);
}
//实现抽象类中说话的功能
void speak()
{
System.out.println("我叫"+name+"是小红的爸爸!今年"+age+"岁了");
}
//实现接口中能工作的新功能
public void work()
{
System.out.println("爸爸从事的工作是A和B!");
}
}
作者:
DxxD
时间:
2015-3-14 08:37
可以,但是需要抽象类中定义一个公共接口,还有就是抽象类中的成员跟方法本来就是用来继承访问的,如果定义成私有属性,就没多大意义
作者:
wkz_crystal
时间:
2015-3-14 13:53
在抽象类中定义一个接口?具体怎样实现呢?还是有点不明白……
作者:
fantacyleo
时间:
2015-3-14 13:57
wkz_crystal 发表于 2015-3-14 13:53
在抽象类中定义一个接口?具体怎样实现呢?还是有点不明白……
2楼说的公共接口不是java语法中的接口interface,而是api这个单词中的"i"——interface,表示一种访问途径,体现到代码里就是public的setter和getter方法来访问私有成员变量
作者:
wkz_crystal
时间:
2015-3-14 14:08
如果用set ,get方法,是不是上面的在抽象的父类中表示:
//定义个抽象类 人(Person)
abstract class Person
{
//人共同具有的属性有:姓名,年龄,性别
String name; //(就是这里的属性如果用private定义,在子类中能访问到吗??)
int age;
String sex;
//构造方法的初始化
Person(String name,int age,String sex)
{
this.name=name;
this.age=age;
this.sex=sex;
}//设置set和get的方法在子类的对象实例化时,就直接调用是吗?
public String setName(String name)
{
return name;
}
public vodi getName)
{
this.name = name;
}
//人共同的行为说话,没有主体,因为每个人说话的具体内容不知道
abstract void speak();
}
作者:
王刚岩
时间:
2015-3-14 14:55
可以,但是需要抽象类中定义一个公共接口,还有就是抽象类中的成员跟方法本来就是用来继承访问的,如果定义成私有属性,就没多大意义
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2