以下内容来自marschen的java4android视频教程
本集主要内容.
1.访问权限与继承.
2.protected 权限
package com.marsdroid;
//如果子类与父类不在同一个包当中,则子类无法继承到父类的当中的default权限的
//成员变量和成员函数.(有问题)
//如果子类和父类不在同一个包当中,子类可以继承到父类当中的default 权限的成员变量
//和成员函数,但是由于权限不够,无法使用.
//如果子类和父类在同一个包当中,则
//Student
//void introduce(){
// System.out.println("我的名字是" + name ",我的年龄是" + age);
// }
// 可执行
//定义public,可以跨包访问
//protected 权限首先拥有和default一样的功能,但是protected该权限只能修饰成员变量和成员函数.
//但是default可以修饰类.
//protected 跨包使用成员变量和函数.
public > protected > default >private
public class Person{
public String name; //可以跨包访问
protected int age;//只能被子类跨包访问
//例:在在程序中,只能被Student这个子类访问age
// 不能被Test 这个类访问age.因为它不是
// Person的子类,Person 与Test这两个类没什么关系
//如果变量声明为private,则变量只能在本类中使用.
void eat(){
System.out.println("eat");
}
void sleep(){
System.out.println("sleep");
}
}
package org.marsdroid;
import com.marsdroid.Person;
class Student extends Person{
void introduce(){
System.out.println("我的名字是" + name +",我的年龄是" + age);
}
}
package org.marsdroid;
import com.marsdroid.Person;
class Test{
public static void main(String args[]){
Person p = new Person();
p.name = "zhangsan";
p.age = 10;
}
}