java基础(四)
一、面向对象的三个基本特征:
1、封装,将对象的实现细节隐藏起来,并通过公共接口暴露相关功能;
2、继承,代码复用的表现,当子类继承父类后,子类作为一种特殊的父类,直接获得父类的属性和方法;
3、多态,子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,意味着同一个类型的对象在运行时可能表现出不同的行为特征
(PS:java不支持多重继承)
二、面向对象编程的一般过程大致为:OOA面向对象分析、OOD面向对象设计和OOP面向对象编程三个阶段。面向对象分析设计一般需用到UML工具。UML主要有以下几种图:用例图、类图、组件图、部署图、顺序图、活动图和状态机图
三、JAVA 8中基本数据类型
| 数据类型 |
大小 |
范围 |
默认值 |
byte(字节) |
8 |
-128 - 127 |
0 |
shot(短整型) |
16 |
-32768 - 32768 |
0 |
int(整型) |
32 |
-2147483648-2147483648 |
0 |
long(长整型) |
64 |
-9233372036854477808-9233372036854477808 |
0 |
float(浮点型) |
32 |
-3.40292347E+38-3.40292347E+38 |
0.0f |
double(双精度) |
64 |
-1.79769313486231570E+308-1.79769313486231570E+308 |
0.0d |
char(字符型) |
16 |
‘ \u0000 - u\ffff ’ |
‘\u0000 ’ |
boolean(布尔型) |
1 |
true/false |
false |
四、JAVA中基本数据类型的转换方式:自由转换和强制转换。强制转换的方式与C语言类同,浮点数转整数直接去掉小数点后面的内容,缩小转换时从低位对齐转换。
五、JAVA中运算符优先级:赋值运算<三目运算<逻辑运算<位操作<关系运算符<移位运算符<算术运算符<强制转换<单目运算符<分隔符。
六、JAVA中break结束循环、continue结束本次循环、return结束方法
七、JAVA中两种数组定义方法:1、type[] arrayname 2、 type arrayname[]。其中第二种定义方法与C语言类似,但语义不明确,建议使用第1中,表明type[]也是一种引用类型。
JAVA中数组必须先初始化才能使用,这一点与C语言不同,JAVA中有两种数组初始化的方法:静态初始化和动态初始化,执行动态初始化时,系统根据数组类型自动初始化值,比如int[]
则将所有元素初始化为0,引用类型则初始化为null。
八、JAVA中遍历数组的方法有两种:1、类似于C语言的基本for循环 2、jdk1.5之后提供foreach循环其格式为for(type a,arrayname),其中arrayname为type[]类型数组
九、JAVA中数组元素保存在heap内存中,而数组引用变量则存储在stack中。(JAVA中stack一般保存方法中定义的变量,每个方法的运行都会新建一个stack区,在方法运行时逐个将变量压入stack,方法结束时
则pull所有变量,自然销毁stack;heap中保存对象,方法结束时对象也不会销毁,只有当对象不再被引用时回被回收)
十、JAVA中this指向调用类中方法的对象,它的最大作用是实现在一个类的内部方法的互相调用,但在使用时往往省略this关键字,特别的在static修饰的方法中是不允许使用this
十一、JAVA中方法的参数传递唯一方式:值传递。C语言对应着两种:值传递和地址传递。其实JAVA与C本质没有区别,只是JAVA将指针做了封装,只需要值传递就能完成C语言两种传递方式对应的操作。
java基础(四)的更多相关文章
- Java基础(四) StringBuffer、StringBuilder原理浅析
StringBuilder与StringBuffer作用就是用来处理字符串,但String类本身也具备很多方法可以用来处理字符串,那么为什么还要引入这两个类呢? 关于String的讲解请看Java基础 ...
- java 基础 四种权限修饰符
/** * Java有四种权限修饰符: * public > protected > (default) > private * 同一个类 YES YES YES YES * 同一个 ...
- Java基础-四要素之一《继承》
继承的概念: 继承在本职上是特殊——一般的关系,即常说的is-a关系.子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法. 继承是所有OOP语言不可缺少的部分,在java中使 ...
- Java基础-四要素之一《多态》
什么是多态 指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式.(发送消息就是函数调用) 多态是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的 ...
- Java基础(四)-异常处理机制及其设计
本篇主要是记录自己所理解的Java异常处理机制(基于jdk1.7)以及怎么去处理和设计异常.还记得当初学习Java异常这块的时候都没怎么注意它的用途,以为就是简单的处理下异常,我避免程序出现这样错误就 ...
- 《温故而知新》JAVA基础四
类的封装 定义:将类的一些信息隐藏起来,不允许外部的程序直接的访问,而是通过该类提供的一些方法来获取 好处:只能通过特定的法方法访问数据,保护了数据, 实现封装的步骤: 修改属性的可见性:(一般类属性 ...
- Java基础-四要素之一《封装》
封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保 ...
- Java基础-四要素之一《抽象》(接口)
抽象的概念就是抽象出共同属性:成员变量和方法 定义抽象使用abstract关键字定义抽象类和方法 抽象类 abstract class 包含抽象方法的类,叫抽象类. 所以抽象类可以有private等多 ...
- java基础-四种方法引用
实例 直接三角形,通过两边算第三边,目的是为了如何使用这几种方法引用.代码中多有些不合适,尽情原谅. 静态方法引用 接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致. 调用 //静态引用 ...
- java 基础四
1 for循环嵌套 简而言之,就是一个for循环语句里面,还有一个for循环语句. 外层循环,每循环一次,内层循环,循环一周. 示例 package java003; /** * 2017/9/1. ...
随机推荐
- ResourceManager里面Trackingui需要手动该ip
C:\Windows\System32\drivers\etc 这个路径下配置了ip和主机名,不过是大小写,ping不同,不论ping大小写还是全部小写都不行,我看地址栏是小写所以想着把hosts里C ...
- signalr服务端-基础搭建
signalr 支持 iis托管.winform.windowsservices.wpf 托管 这里我采用winfrom托管 首先画一个这样的窗体 在服务项目通过项目管理包安装signalr类库 安装 ...
- 关于分页接口设计(下拉刷新上拉加载原理,解决page count请求重复数据的问题)
- 对于angularJS的一点思考
已经找好工作近两周了,入职基本上还算顺利,自己两年来的挑灯夜战也算是有了收获,于是这两周基本上是按部就班的工作,没有学习什么新技术.在上个公司的时候,同事在项目中使用angularJs,之前他也没有接 ...
- Java初学者笔记
Java初学者笔记 前提:认识汉字,认识英语单词,会用键盘打字 ------------------------------- 端口是什么: --------面向对象编程(OOP) 接口”(Inter ...
- 纯js+css实现loading等待效果
此插件是基于jqueryUI的widget,下面是具体实现代码 第一部分css: /***loading***/ .loading-box{ position:absolute; text-align ...
- [Head First设计模式]一个人的平安夜——单例模式
系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式— ...
- 以空白符结尾的 alias
网上经常有人问这个问题:为什么我写的 alias 在 sudo 下就不管用了? $ alias 'll=ls -l' $ sudo ll a-private-dir sudo: ll: command ...
- 代理模式及jdk动态代理原理
代理模式 :为其它对象提供代理,以控制对这个对象的访问. 代理模式的特征:代理类(proxyClass)与委托类(realClass)有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转 ...
- Linux C 堆内存管理函数malloc()、calloc()、realloc()、free()详解
C 编程中,经常需要操作的内存可分为下面几个类别: 堆栈区(stack):由编译器自动分配与释放,存放函数的参数值,局部变量,临时变量等等,它们获取的方式都是由编译器自动执行的 堆区(heap):一般 ...