标签:
oop_day02_类、重载_20150810
-----------回顾:------------------
1.猜字符小游戏
2.什么是类?什么是对象?
1)现实世界是由很多很多对象组成的
基于对象抽出了类
2)对象是真正存在的单个的个体
类代表一类个体,类型,类别
3)类中包含:
3.1)所有对象所共有的特征/属性---------变量
3.2)所有对象所共有的行为----------------方法
4)一个类可以创建多个对象
同一个类的多个对象,结构相同,数据不同
5)类是对象的模板,对象是类的具体的实例
------------------------------笔记:------------------------------------------
1.如何创建类?如何创建对象?
2.引用类型之间画等号: 家门钥匙
1)指向同一个对象(数据有一份)
2)对其中一个引用的修改,会影响另外一个引用
基本类型之间画等号: 身份征复印件
1)赋值(数据有两份)
2)对其中一个值的修改,不会影响另外一个值
内存图:
基本类型和引用类型在内存中存储
基本类型画等号
引用类型画等号
3.null:
1)空,即:不再指向任何对象
2)若引用的值为null,则不能再进行任何操作了
若操作则NullPointerException(空指针异常)
内存图:
Null和NullPointerException
示例代码:
package oo.day02; public class Demo { public static void main(String[] args) { /* Cell c = new Cell(); Cell cc = c; //指向同一个对象 cc.row = 5; c.row = 8; System.out.println(cc.row); //8 int num = 8; int num2 = num; //赋值 num2 = 88; System.out.println(num); //8 */ /* Cell c = new Cell(); c.row = 2; System.out.println(c.row); c = null; //空,不再指向任何对象 System.out.println(c.row); //空指针异常(NullPointerException) */ } }
4.方法签名=方法名+参数列表
5.方法的重载(overload):
1)一个类中,方法名称相同,参数列表不同,称方法的重载
2)编译器在编译时,自动根据方法的签名绑定调用不同的方法
示例代码:
package oo.day02; /* * 1.一个文件中可以包含多个类 * 2.public修饰的类只能有一个 * 3.public修饰的类必须与文件名相同 */ //重载的演示 public class OverloadDemo { public static void main(String[] args) { Aoo o = new Aoo(); o.say(); o.say("zhangsan"); o.say(23); o.say("zhangsan", 23); o.say(23, "zhangsan"); } } class Aoo{ void say(){} void say(String name){} void say(int age){} void say(String name,int age){} void say(int age,String name){} //int say(){ return 5;} //编译错误,与返回值类型无关 //void say(String address){} //编译错误,与参数名无关 }
6.构造方法:
1)给成员变量赋初值
2)与类同名,没有返回值类型
3)在创建(new)对象时被自动调用
4)若自己不写构造,则系统默认提供一个无参构造
若自己写构造,则不再默认提供
5)构造方法可以重载
7.this关键字:
1)指代当前对象,哪个对象调指的就是哪个对象
方法中访问成员变量,默认有个this.
2)用法:
2.1)this.成员变量名---------访问成员变量
2.2)this.方法名()-------------调用方法(几乎不用)
2.3)this()-----------------------调用构造方法
--------------------------------------------------------------------------------------------------------
总结:
方法的重载与方法名和参数列表有关,构造方法的重载也是一样。
一个文件中可以包含多个类、public修饰的类只能有一个、public修饰的类必须与文件名相同
this指代当前对象,哪个对象调指的就是哪个对象
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/u011637069/article/details/47406675