------------------------- android培训、java培训、期待与您交流! -------------------------
一、封装性
所谓封装,就是将对象具有的成员变量和成员函数包装和隐藏起来,让外界无法直接使用,被封装的成员只能通过某些特定的方式才能访问。
实现封装有两个步骤:
1、将不能暴露的成员隐藏起来,我们就不能让其在类的外部被直接访问或赋值。实现方法是将该成员定义为私有的,在成员定义前加上private访问权限修饰符。
2、用公共方法来暴露对该隐藏成员的访问,可以给成员加上public修饰符,将该成员定义为公共的。
具体请看如下实例:
class Customer{
String name;
String sex;
private int age;
public void setAge(){
if(age<0||age>100){
System.out.println("age无法赋值")
return;
}
this.age = age;
}
public int getAge(){
return this.age;
}
}
public class Test{
public void main(String[] args){
Customer zhangsan = new Customer();
zhangsan.setAge(25); //使用特殊方法访问Customer类的age成员
System.out.println("zhangsan.age="+zhangsan.getAge());
}
}
二、继承性
对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了父类的特性,新类称为原始类的派生类(子类),而原始类称为新类的父类。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
1. 使用继承:提高程序的扩展性、提高了代码的重用性。
2.java继承的语法格式
java中继承的关键字是:extends。
格式:
public class 子类名 extends 父类名 {
}
注意:
java的继承是单继承。一个类只有一个父类。
3.子类能继承到父类的法和属性
第一种:所有的属性和方法都被子类继承到了。
第二种:
a、子类和父类在同一个包下:
公有的受保护的属性和方法被子类继承到了。
b、子类和父类不在同一个包下:
公有的方法和属性被子类继承到了。
4.子类的对象能调用父类的方法和属性
a、子类和父类在同一个包下:
公有的受保护的属性和方法能被子类调用。
b、子类和父类不在同一个包下:
公有的方法和属性能被子类调用。
在类和抽象类中,默认的就是受保护的。
在接口中,默认的就是公有的。
5.方法的重写
实现方法重写的条件:
a.必须要存在继承关系
b.方法的返回值类型,方法名,参数个数以及参数类型必须要和父类的完全相同。
c.方法的访问修饰符,可以大于或者等于父类方法的访问修饰符。
只能重写受保护的和公有的
重写方法的调用
会优先执行子类的方法,如果子类中没有该方法,则执行父类中定义的方法。
6.重载overload
同一个类中,相同名字的方法,但是参数类型、个数或者顺序至少有一项不同。
//定义一个学生类
public class Student{
private String name;
private double score;
public Student(){
System.out.println("Student");
}
public Student(String name){
this.name = name;
}
public String getName(){
return name;
}
//定义学习方法
public void study(){
score++;
System.out.println(name+"学习中,学分是"+score);
}
}
//定义一个大学生类
public class UNiversityStudent extends Student {
public UNiversityStudent (){
System.out.println("UNiversityStudent ");
}
//重写学习方法
public void study(){
System.out.println(getName()+"在学习中!!!");
}
//重载学习方法
public void study(String str){
System.out.println(getName()+"在学习中!!!");
}
public void play(){
System.out.println(getName()+"在踢足球");
}
}
三、多态性
多态是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
多态就是方法的重载,继承,方法重写,自动转型等技术的统称。
------------------------- android培训、java培训、期待与您交流! -------------------------
详细请查看:http://edu.csdn.net/heima