Java程序设计基础第五章精品PPT课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

import human.*;
public class test extends Human{
public static void main(String[] args) {
test man=new test();
System.out.println(man.showname());
System.out.println (man.name);
第7章 Java 语言类的特性
1 类的私有成员与公共成员及访问控制 2 多态机制——方法的重载 3 构造方法 4 类的静态成员 5 对象的应用
11.10.2020
1
1 访问控制

数据成员与方法
Public
Public
所有类
缺省
包中类(含当前类)
Protected
包中类(含当前 包中类(含当前类) 类),所有子类
} } 11.10.2020
5
保护访问控制符protected说明
➢用protected修辞的数据成员和方法可以被 该类自身、同一包中的其他类以及其他 包中的该类的子类
➢其主要作用就是允许其他包中的该类的 子类来访问父类的特定属性
11.10.2020
6
缺省访问控制符示例
➢ 位于default包中的Human.java
据类型和参数的顺序等方面的不同来区分,跟返回值类型和 修饰符无关
public class test
{ static int add(int a,int b)
{ return(a+b);}
static double add(double x,double y)
{பைடு நூலகம்eturn(x+y); }
static double add(double x,double y, double z)
Human man=new Human();
System.out.println(man.name);
System.out.println (man.age);
System.out.println (man.showname());
}
11}.10.2020
7
缺省访问控制符示说明
➢使用缺省访问控制符的类、数据成员及 成员方法只能被处于同一个包中的其它 类访问
– (1)以相似的方式处理相近概念
– (2)使程序更易于扩展
Java中提供两种多态机制:
– 重载:同一类中定义了多个同名而不同内容的 成员方法
– 覆盖:子类可以重新定义与父类同名的成员方
法,使父类方法在子类对象中不复存在。
11.10.2020
11
重载示例
重载的方法主要通过形式参数列表中参数的个数、参数的数
System.out.println (man.showname());
11.1}0.2020
3
}
公共访问控制符public说明
➢处于同一个包中的类不用说明即可相互 访问
➢处于不同包中的类,一般说来,他们之 间是不可见的,也不能互相引用
➢但是,当一个类被声明为public时,只要 在其他包的程序中使用import语句引入 这个public类,就可访问和引用这个类
}
}11.10.2020
9
私有访问控制符private说明
➢用private修辞的数据成员和方法只能被 该类自身访问和修改
➢不能被任何其他类(包括该类的子类) 访问和引用
➢private为数据成员和方法提供最高级别 的保护
11.10.2020
10
2 多态机制
多态是指一个程序中同名的不同方法共存 的情况。 多态的作用主要有两个方面:
11.10.2020
4
保护访问控制符protected示例
package human; public class Human{
protected String name="Tom"; public int age=24; public String showname(){return name;} }
➢缺省访问控制符即无访问控制符,而不 是“default”或“friendly”
11.10.2020
8
私有访问控制符private示例
class Human{ private String name="Tom"; public int age=24; String showname() { name="John"; return name; }
➢ 位于default包中的test.java
import human.*;
public class test{
public static void main(String[] args) {
Human man=new Human();
System.out.println(man.name);
System.out.println (man.age);
{ return(x+y+z); }
public static void main(String[] args) {
System.out.println("Sum is:"+add(8.5,2.3));
class Human{ String name="Tom"; int age=24; String showname(){return name;}
}
➢ 位于default包中的test.java
public class test{
public static void main(String[] args) {
缺省(friendly) 包中类(含当前类) 包中类(含当前类)
private
当前类本身
当前类本身
11.10.2020
2
公共访问控制符public示例
➢ 位于包human中的Human.java package human;
public class Human{ public String name="Tom"; public int age=24; public String showname(){return name;} }
}
public class test{
public static void main(String[] args) {
Human man=new Human();
System.out.println(man.name);
System.out.println (man.showname());
System.out.println (man.age);
相关文档
最新文档