Java面向对象知识点
对象:一切客观存在的事物都是对象
语法部分:
类的概念:1.类是对象的抽象
2.类是客观事物在人脑中的主观反应
3.类是对象的模板
类的设计:
属性:定义位置:类以内,方法以外
实例变量:1 有默认值,
2 至少在本类的内部有效,
3 可以和局部变量重复命名,局部变量优先
方法:功能 去掉static
声明部分:修饰符 返回值类型 方法名称 参数表 异常
实现部分 {}方法
构造方法:特殊方法
a.构造方法必须和类名相同
b.没有返回值类型组成部分,修饰符 方法名称 参数表 异常
c.不能手动调用,创建对象时,调用构造方法
作用:有参的构造方法,给属性赋值
注意:如果没有写出任何构造方法,默认的是公开的无参的构造方法
如果是写出有参数的构造方法,系统不再默认无参的构造方法
创建对象:
语法:new 构造方法(构造参数);
Student student1 = new Student();//调用无参数的构造方法
Student student2 = new Student(1, "yy");//调用有参数的构造方法
this关键字:
a.语法比较严格,
this(参数);调用本类的构造方法,必须在构造方法的第一句
注意:不要递归调用构造方法
b.类的内部,调用实例变量时加 this
当局部变量和实例变量重复命名时,局部变量优先,
如果是想使用实例变量加 this.属性名
方法的重载(overLoad)
作用:屏蔽了使用者使用的差异,调用方法时更加灵活
语法要求:
1.方法名称相同
2.参数列表不同(类型不同,个数,顺序);
3.返回值不要求
面向对象的三大特性:
1、封装
代码实现:对属性私有,提供公开的set/get方法
2、继承
关键字: extends
如:A extends B ---> B是A的父类
①私有的方法不可以继承
②构造方法不可以继承
关键字: super
①super.属性名、方法名表示访问父类的属性,或者调用父类的方法
②super(),传入实参代指调用父类的构造方法,必须放在构造方法的第一行
在构造方法中如果没有this,也没有super,那么系统会默认添加一个
方法的覆盖:子类继承父类的方法中有特殊的实现
语法要求:1、函数名必须相同,参数表一样,返回值类型一样(声明一样)
2、修饰符:和父类的相同或者更宽
修饰符的访问权限由窄到宽:
private----> default--->protected--->public
从一般到特殊的关系:父类是子类共性的抽象
instanceof 表示从属关系,是...的一种
3、多态
①父类的引用指向子类的对象
Animal a = new Dog();
②编译时多态:引用只能调用其引用下的方法或者访问引用下的属性
③运行时多态:运行的时候会根据实际类型调用其覆盖后的方法
多态的实质:方法的重载和方法的覆盖
①多态用在返回值上
public A m(){} 返回值是A类或者其子类
多态用在参数表中
public 返回值类型 m(A a){} 参数表可以是A类,或者是A的子类
Java面向对象知识点的更多相关文章
- Java 面向对象 知识点基础浅谈
1.类和对象的关系 类是一个抽象的模板,对象是根据模板制造出来的,只有类建立之后,对象才可以在类中实例化对象.举个例子讲:我要用黄金浇筑一块砖,我会在一个模型里进行,这样才能有砖的形状,那模型即是类, ...
- Java面向对象知识点精华
- Java最重要的21个技术点和知识点之JAVA面向对象
(二)Java最重要的21个技术点和知识点之JAVA面向对象 写这篇文章的目的是想总结一下自己这么多年JAVA培训的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的J ...
- java面向对象编程知识点总结
一:今天完成 上午详细了解了java面向对象编程的一些细节,记录如下. 1)类 是一种引用类型,包含一个签名和一个主体,主体是放在花括号里面的成员,成员包括字段和方法,还有构造方法.初始化程序和嵌套类 ...
- # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结
095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- java基础1.0::Java面向对象、面向对象封装、抽象类、接口、static、final
一.前言 一直以来都是拿来主义,向大神学习,从网上找资料,现在就把自己在工作中和学习中的所理解的知识点写出来,好记星不如烂笔头,一来可以作为笔记自己温习,二来也可以给走在求学之路的同学们一点参考意见, ...
- Java核心知识点学习----线程中如何创建锁和使用锁 Lock,设计一个缓存系统
理论知识很枯燥,但这些都是基本功,学完可能会忘,但等用的时候,会发觉之前的学习是非常有意义的,学习线程就是这样子的. 1.如何创建锁? Lock lock = new ReentrantLock(); ...
- Java面向对象的多态
Java中多态的概念是面向对象中除封装和继承外非常重要的知识点,也是Java面向对象三大特性最后一个特性 多态其实就是指对象存在的多种形态,多态分为引用多态和方法多态 引用多态的含义就是:父类的引用可 ...
- Java基础知识点
以下10点为JAVA 基础知识,后面将足以总结和完善以备面试 数据类型 (包装类,字符串,数组) 异常处理 Java IO和NIO 数据结构 (集合和容器 ) 多线程(并发) 网络通信(协议) 面向对 ...
随机推荐
- iOS开发—— UIImagePickerController获取相册和拍照
一.简单的拍照显示,或是从相册中直接选取照片 #import "ViewController.h" @interface ViewController ()<UIImageP ...
- LPC1768基本输入输出GPIO使用
LPC1788通用IO口的控制包含了一些基本的组件,比如设置推挽输出,开漏输出,上拉电阻等,我们今天来看看. 首先使用GPIO要打开GPIO的系统时钟 LPC_SC->PCONP |= (1 ...
- c++中vector使用
不多说,先看代码: #include <IOSTREAM> #include <VECTOR> using namespace std; int main() { cout&l ...
- 功率W与dBm的对照表及关系(转)
源:功率W与dBm的对照表及关系 功率W与dBm的对照表 dBm Watts dBm Watts 0 ...
- centos6.6-------DHCP服务配置
一.为一个单一的网段提供地址服务 软件包: dhcp配置文件: /etc/dhcp/dhcpd.conf租约文件: /var/lib/dhcpd/dhcpd.leases监听端口: ...
- Android布局及属性归总(查询用)
常见布局 LinearLayout 线性布局 子元素任意,组织成一个单一的水平或垂直行,默认为水平方向TableLayout 表格布局 子元素为<Tabl ...
- struts配置文件和国际化
一.加载包struts2-core-2.3.24.1.jar struts-default.xml :各种栈 org.apache.struts2 -->> default.propert ...
- python pandas dataframe to_sql方法error及其解决
今天遇到了一个问题,很是奇怪,自己也想了一个另类的方法将其解决了,现在将详细过程经过记录如下: 我在处理完一个dataframe之后,需要将其写回到数据库.这个dataframe比较大,共有53列,7 ...
- 九 Android基本知识介绍
1.Package Package,中文翻译过来是包的意思.安卓系统的程序是以apk作为扩展名的,.apk就是android package的简写,package也就是这个app的唯一标识,其实这里的 ...
- 八 Appium常用方法介绍
由于appium是扩展了Webdriver协议,所以可以使用webdriver提供的方法,比如在处理webview页面,完全可以使用webdriver中的方法.当然在原生应用中,也可以使用. 1.元素 ...