- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JAVAOOP笔记整理
一、封装
1.构造方法是在什么时候被调用?能不能手动调用?
:在new对象的时候被系统自动调用,不能手动调用
2.为什么需要要封装?
:保护数据的有效性和安全性
3.什么是封装?
:(1)对象的属性和方法不可分割。
(2)是保护数据的一种机制。
3.属性怎么样封装?
:第一步:把所有的属性定义成私有。
第二步:提供公有的get/set方法,间接操作属性。
set属性():设置属性值
get属性():得到属性值
==================================================================
补充:封装
一、属性怎么样封装?
第一步:把所有的属性定义成私有:private
第二步:提供公有的get/set方法,间接操作属性。
set属性():设置属性值
get属性():得到属性值
二、方法怎么样封装?
第一步:把需要保护的方法定义成私有的:private
第二步:提供公有的方法间接的调用私有的方法。
第一部分:static :静态的
一、static的用法:用在属性前面和方法前面
1.用在属性前面:
加了static的属性----------静态属性
没有加static的属性------非静态属性
注意:静态属性与非静态属性的区别?
静态属性 :属类(所有的对象)所有,与对象没有关系,可以用类名直接调用,在内存只开一个空间,静态 的属性是在new对象之前就已经在内存!!
非静态属性:属对象所有,必须new出对象才能使用,每一个对象都要有自己的属性
空间与对象有关,在内存中有几个对象就有几个空间!!
2.用在方法前面:
静态方法:属类(所有的对象)所有,与对象没有关系,可以用类名直接调用,在new对象之间就被加载进内 存了。
非静态方法:属对象所有,与对象有关,不可以用类名来调用。
(1)非静态方法:非静态的方法能调用静态的方法
(2)非静态的方法可以调用静态的属性也可以调用非静态的属性
静态方法:静态的方法不能调用非静态的方法
(3)因为静态方法在new对象之前就已经在内存中
(4)而非静态的方法要new出对象才会在内存中
(5)静态方法可以调用静态属性不可以调用非静态属性
总结:静态的不能调用非静态!!!
3、static关键字的实际应用? 单列模式------一个类只能new一个对象
饿汉式:
public class Student{
private static Student stu = new Student();
private Student(){
}
public static Student getStudent(){
return stu;
}
}
懒汉式:
public class Student{
private static Student stu = null;
private Student(){}
public static Student getStudent(){
if(stu==null){
stu = new Student();
}
return stu;
}
}
关键字:static静态的
用法:用在属性和方法的前面
(1)用在属性前面:静态的属性
静态属性和非静态属性的区别:
public class A(){
int i; //非静态的
static int j; //静态的
public A(){
i++;
j++;
System.out.print(i===+i);
System.out.print(j===+j);
}
}
测试类中:
A a = new A(); //i = 1 j=1
A b=new A(); //i=1 j=2
===================================================
第二部分:继承 (封装 继承 多态)
一、为什么需要继承?
写类的时候,会有重复的代码:代码冗余
为了解决代码冗余的问题所有有了java的继承机制!!
二、什么是继承?
继承:就是继承者拥有被继承的某些特征!!
有点像儿子继承老子!!
继承是与类之间的关系!! 群体与群体的关系
类与类之间继承的条件:is--a的关系 :一个类的对象也是另外一个类的对象!!
文档评论(0)