java几大特性_关于java三大特性的总结
一:封装:主要对于权限的限制
首先,属性可用来描述同一类事物的特征,方法可描述一类事物可做的操作。封装就是把属于同一类事物的共性(包括属性和方法)归到一类中,以方便使用。封装是隐藏类的内部实现机制,可以在不影响使用的情况下,改变类的内部结构,同时也保护了数据。且对外部只保留一些对外接口使之与外部发生联系。系统的其他部分之一通过这些接口与之进行交互。也就是说,用户不需要知道对象内部方法的实现细节,但可以根据对象提供的外部接口(对象名和参数)来访问参数
public class StuInfo{
private String name;
private String idNum;
private int age;
public int getAge(){
return age;
}
public String getName(){
return name;
}
public String getIdNum(){
return idNum;
}
public void setAge( int newAge){
age = newAge;
}
public void setName(String newName){
name = newName;
}
public void setIdNum( String newId){
idNum = newId;
}
}
二:继承
一个累继承另一个类,被继承的为父类,继承的为子类。子类继承父类之后会有父类的所以方法和属性,父类的私有方法是不能被继承的。子类可以重写父类的所有方法。
重写:当父类提供的方法无法满足子类的需求时,子类可以重写父类的方法,实现自己的需求。
// A.java
public class A {
private int i;
protected int j;
public void func() {
}
}
// B.java
public class B extends A {
}
三:多态
多态的三种形式
1、父类做形参
2、父类做返回值
3、接口做形参
父类做形参:
比如说你是一个比如你是一个酒神,对酒情有独钟。某日回家发现桌上有几个杯子里面都装了白酒,从外面看我们是不可能知道这是些什么酒,只有喝了之后才能够猜出来是何种酒。你一喝,这是剑南春、再喝这是五粮液、再喝这是酒鬼酒….在这里我们可以描述成如下:
酒 a = 剑南春
酒 b = 五粮液
酒 c = 酒鬼酒
这里的剑南春、五粮液、酒鬼酒上面的喝酒例子中,酒(Win)是父类,剑南春(JNC)、五粮液(WLY)、酒鬼酒(JGJ)是子类。我们定义如下代码:
JNC a = new JNC( ) ;
对于这个代码我们非常容易理解无非就是实例化了一个剑南春的对象嘛!但是这样呢?
Wine a = new JNC();
java几大特性_关于java三大特性的总结相关推荐
- ocv特性_锂离子电池的三大特性分析
一.电池的容量特性 容量测试得到电池在不同倍率下的放电电压与容量关系曲线如图3所示. 图3 不同倍率下的放电电压与容量的关系曲线 从图中可以看出,在整个放电过程中锂离子电池的电压曲线可以分为3个阶段: ...
- java多态 作用_关于Java三大特性之多态的总结
面向对象的三大特性:封装.继承.多态.从一定角度来看,封装和继承几乎都是为多态而准备的.这是我们最后一个概念,也是最重要的知识点. 1.定义: 多态:指允许不同类的对象对同一消息做出响应.即同一消息可 ...
- java面向对象特性_java面向对象编程三大特性
一说到java面向对象编程就想到面向对象的三大特性,封装,继承和多态,下面我们来具体分析以下这三大特性在编程中是如何具体体现的. 封装 将类的属性和具体实现细节隐藏,只提供相关的接口和方法来对隐藏信息 ...
- Java的泛型特性_学习Java的重中之重!
Java的"泛型"特性,你以为自己会了 使用Java的小伙伴,对于Java的一些高级特性一定再熟悉不过了,例如集合.反射.泛型.注解等等,这些可以说我们在平时开发中是经常使用到的, ...
- 【Java】保证并发安全的三大特性
一.并发编程三大特性的定义和由来 并发编程这三大特性就是为了在多个线程交替执行任务的过程中保证线程安全性. 二.为什么会出现线程不安全的现象呢? 接下来我们从这三个特性切入来介绍线程不安全的原因. 1 ...
- java se7 变化_[转] Java se 7新特性研究(二)
今天主要研究Java se 7中异常处理的新功能.从今天开始正在将jdk7的说法改为java se 7跟oracle官网的一致 一.新增了try-with-resource 异常声明 在JDK7中只要 ...
- 纯java分布式内存数据库_最新Java岗面试清单:分布式+Dubbo+线程+Redis+数据库+JVM+并发...
最近可能有点闲的慌,没事就去找面试面经,整理了一波面试题.我大概是分成了Java基础.中级.高级,分布式,Spring架构,多线程,网络,MySQL,Redis缓存,JVM相关,调优,设计模式,算法与 ...
- java skip函数_【Java必修课】图说Stream中的skip()和limit()方法及组合使用
1 简介 本文将讲解Java 8 Stream中的两个方法:skip()和limit().这两个方法是Stream很常用的,不仅各自会被高频使用,还可以组合出现,并能实现一些小功能,如subList和 ...
- 学JAVA的诗句_学Java有感(终)
大一的下半学期逐渐步入尾声,我的Java学习也以告一段落.经过一个学期的学习,不能说是融会贯通,但也算小有心得.下面就来谈谈我对这个学期Java学习的感受吧! 在大一的上半学期,我接触到了一个计算机语 ...
- python中对象的特性_python面对对象-三大特性
python面向对象的三大特性:继承,封装,多态. 1. 封装: 把很多数据封装到一个对象中. 把固定功能的代码封装到一个代码块, 函数, 对象, 打包成模块. 这都属于封装的思想. 具体的情况具体分 ...
最新文章
- Winform/WPF实例中的相互操作
- java 7 g1_java7中G1垃圾收集器使用和流程总结
- Albert: A lite bert for self-supervised learning of language representations (Albert)
- iOS总结:项目中的各种小坑汇总
- 边缘提取算子检测比较
- Xamarin Android 所见即所得问题
- 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十二║Vue实战:个人博客第一版(axios+router)...
- Android 广播接收
- 聊聊有哪些参与项目的好途径吧
- Opencv--resize函数五种插值算法实现
- vue watch 经常监听不到_Vue.js中 watch(深度监听)的最易懂的解释
- 《Pro ASP.NET MVC 3 Framework》学习笔记之十八【URL和Routing】
- python 模拟登陆QQ空间
- 线代 | 矩阵的迹 向量内积如何转化为迹
- 超全Python图像处理讲解!花五天才整理的!
- Partition table entries are not in disk order 解决方法
- 基于中文语义词典的语义相关度量方法比较研究
- GTX1050Ti和GTX1060的差距 哪个好
- 贴片元件的封装中名字后缀的L、N、M的含义
- 符号函数sign(x)
热门文章
- VIVADO时序约束之时序例外(set_false_path)
- 权威认可 | 通付盾再次入选工信部“CAPPVD安全漏洞库技术支撑单位”!
- confluence 制作流程图_轩辕剑7全剧情流程图文攻略_全支线任务全收集攻略
- App启动时Application初始化详解
- 还在为清理库存烦恼吗?三步搞定库存!
- jpa 利用JpaSpecificationExecutor做复杂多表联合查询
- 本原勾股数组(PPT)
- 畅谈绿色数据库的应用
- 中国IT应用的绿色明天
- 网易内部说明再谈暴力裁员事件:员工索赔61万,12月开庭