标签:
1.使用对象的步骤:
创建对象:
类名 对象名=new 类名();
Telphone phone=new Telphoone();
使用对象:
引用的对象属性:对象名.属性
phone.screen=5;//给screen属性赋值5
java会给成员变量一个初始值(如果没赋值的时候,java自动赋值为0);不会给局部变量赋值。
在一个方法中,不能有重名变量,在不同方法中可以有重名变量。
成员变量和局部变量可以重名,但是优先调用局部变量。
2.静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。
如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。
在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
3.Java中的包:
包的作用:
管理java文件
解决同名文件冲突
包的使用:
可以通过import关键字,在某个文件使用其他文件中的类
4.java中的this关键字
this关键字代表当前对象
this.属性 操作当前对象的属性
this.方法 调用当前对象的方法
封装对象的属性的时候,经常会使用this关键字
5.内部类的主要作用如下:
内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类
内部类的方法可以直接访问外部类的所有数据,包括私有的数据
内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便
定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );
外部类是不能直接使用内部类的成员和方法滴可先创建内部类的对象,然后通过内部类的对象来访问其成员变量和方法。
如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字。
6. 静态内部类是 static 修饰的内部类,这种内部类的特点是:
静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问
如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员
创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();
7.继承
语法规则:
class子类extends父类
例:class Dog extends Animal{ }
super关键字:在子类中调用父类的属性或者方法
Object类:
Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类。
Object类中的方法,适合所有子类。
8.多态:
对象的多种形态:
引用多态
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象
方法多态
创建本类对象时,调用的方法为本类方法
创建子类对象时,调用的方法为子类重写的方法或者继承的方法。
类型转换的时候可以用instanceof关键字来判断程序的安全性问题(if(animal instance Cat))
9.抽象类:
使用规则:
abstract定义抽象类
abstract定义抽象方法,只有声明,不需要实现。
包含抽象方法的类是抽象类
抽象类中可以包含普通的方法,也可以没有抽象方法。
抽象类不能直接创建,可以定义引用变量。
10.接口
接口概念
接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成。
类是一种具体实现体,而接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部数据,也不关心这些类方法的实现细节,它只规定这些类里必须提供某些方法。
接口定义
和类定义不同,定义接口不再使用class关键字,而是使用interface关键字。
接口定义的基本语法:
[修饰符] interface 接口名[extends 父接口1,父接口2。。。]
{
零个到多个常量定义
零个到多个抽象方法的定义
}
接口定义
常量:
接口中的属性是常量,即使定义时不添加public static final 修饰符,系统也会自动加上。
方法:
接口中的方法只能是抽象方法,总是使用,即使定义时不添加public abstract修饰符,系统也会自动加上。
使用接口
一个类可以实现一个或多个接口,实现接口使用implements关键字。java中一个类只能继承一个父类,是不够灵活的,通过实现多个接口可以做补充。
继承父类实现接口的语法为:
[修饰符] class 类名 extends 父类 implements接口1,接口2.。。
{
类体部分//如果继承了抽象类,需要实现继承的抽象方法;要实现接口中的抽象方法。
}
如果要继承父类,继承父类必须在实现接口之前。
标签:
原文地址:http://www.cnblogs.com/xs573/p/5110078.html