变量:存值
表达式:计算一个值 值
运算符:() =
语句: 编程
语句块:{。。。}
函数:名字{...}
数组:存多个值
面向对象语言:抽象 封装 继承 多态
java:
jdk:java开发环境 jre
jvm:虚拟机
jre:java运行环境 jvm+一些必要的类
类:描述事物
静态特征:姓名 身高 性别 -- 变量(属性)
动态特征:eat sleep study swim -- 函数(方法)
属性:不能重名!
方法:可以重名 ,构成了重载
重载:方法名一致,参数不一致即可(参数的个数,类型,顺序) 与返回值无关
构造函数可以重载
*** 方法调用是根据不同的参数调用不同的重载方法
类与对象:类是创建对象的模板 电子档试卷(类) 打印出来(对象)
如何创建对象:new People() new:开辟内存空间 People():构造的对象
构造函数:类的名称 (){} 专门用来创建对象 同时在创建对象的时候 还可以赋值 如果构造函数是否成功执行 标志着 对象创建的成功与否
不能自己调用 是虚拟机调用 创建对象
每个类都有一个默认的构造函数(无参),如果你在类里面显示的写了一个构造函数,那么这个无参的构造函数 就不存在了
People p=new People();//创建people对象 并且 把这个对象的地址(指针) 赋给 变量 p
this:表示当前对象(指针)
类与类:
继承(extends):节省代码 继承的是那些允许被继承的(public protected ) 提供 子类对象访问父类成分的一种途径
属性覆盖:子类覆盖父类的属性,只要属性名称一致就可以了,类型可以不一样 通常在属性中 很少 覆盖父类的属性
方法覆盖:方法名一致 参数一致 返回值一致 访问控制 权限 越来越 宽泛
***构造函数不能覆盖
创建对象:先创建父类对象 再创建子类对象
super:父类对象(指针)
super()是调用父类的构造函数 ,写与不写都存在,如果显示的写出来,只能在构造函数的第一行,super中的参数决定调用哪个构造函数
组合:一个类的对象拥有另一个类的对象
多态:字面的意思就是“多种状态”。在面向对象语言中,接口的多种不同的实现方式即为多态 (父类引用指向子类对象)
多态前提是继承
2种环境:
编译时环境:只要符合java的基本语法
运行时环境:产生什么对象 就是执行该对象成分
接口(interface):定了一套规范和标准 可以有方法(没有方法体)和属性(常量)
接口 不是类 它没有构造函数 也不能够(不需要)创建对象 专门给类实现的
java语言只支持单继承(C++语言支持多继承) 支持实现多个接口 -- 某种程度上降低了 单继承带来的 功能缺失
接口中的方法 都是抽象方法
抽象类(abstract class):描述一些抽象的事物 专门被继承的
抽象类中可以有抽象方法 也可以没有抽象方法 (可以全部抽象方法,可以全部不是抽象方法)
抽象类 中的抽象方法 ,子类一定要实现
抽象类 有构造函数 但是不能直接创建对象 子类创建对象的时候 ,可以产生父类对象 已供子类继承
抽象类与接口:
抽象类 可以实现全部或部分接口方法, 也可以不实现接口的方法,如果抽象类不实现接口方法 子类一定要实现剩下的接口方法
抽象类可以实现接口方法,并且在接口方法中 抛出其它抽象方法,屏蔽子类直接操作接口方法
final:不能改变
属性:常量(不能改变值)
构造函数:不能修饰
方法:不能被覆盖
类:不能被继承
static:静态 -- 类的成份
类:不能修饰类
属性:静态属性(变量) 类的属性
构造函数:不能修饰
方法:静态方法 类的方法
代码块:每次创建对象的时候 会促发 代码块执行 只执行一次
静态代码块 :会在 类加载的时候 执行一次 且 只执行一次
访问控制权限:private (defalut) protected public
private :本类中访问
(defalut) :同包中访问
protected :子类或同包中访问
public:都可以访问
8种基本数据类型:byte boolean char short int float long double
String;不是基本数据类型 但是它表示出基本数据类型的特征
原文地址:http://11159573.blog.51cto.com/11149573/1742644