JAVA之路(二)
学道酬勤,这是第二次学习JAVA,感觉如醍醐灌顶一样,理解很多思想和道理。
本博只是自己对JAVA的一些理解,具体定义以及用法百科里有。
我为什么在博客园内记录自己的学习过程呢,因为我想有人知道我在学它,从而对我形成一种督促,让我不能轻易言弃。
简单的对JAVA做一下总结:
1:什么是面向对象编程,它就是一种编程思想。
通过把事物抽象成具有属性和行为的实体来清晰编程的层次感,通过修饰符、规范判断来保护程序的安全,通过继承简化代码量。(还未复习到多态就先不总结这一点)
面向对象编程即为,事物抽象为实体(基础)——>封装(安全)——>继承(简洁).
2:构造方法的含义:
构造方法就是类实例化对象的一种途径,通过new关键字在堆内开辟一个空间,构造出一个实例对象。
PS:构造代码块——一个类中通常需要将构造方法重载,这个时候运用构造代码块可以简洁代码。它的作用就是将块内的代码在调用构造方法内部代码前加到构造代码中
举个例子:
{
System.out.println("我是构造代码块");
}
public std(){
System.out.println("我是构造函数一");
}
public std(String name,int age){
System.out.println("我是构造函数二");
}
当调用构造方法std()或者std(String name,int age)时,编译器就会将构造代码块的内容放入构造方法内
如:
public std(){
System.out.println("我是构造代码块");
System.out.println("我是构造函数一");
}
PPS:子类初始化时,无论子类调用本身的构造函数是否有参,它默认先调用的都是父类的无参构造函数,可见,一个类的无参构造方法多么重要。
3:static关键字
静态static,我理解的是,它的作用是使对象或者方法成为公共对象或者公共方法。就是在内存中开辟一块公共区域,每一个通过类实例化的对象都可以访问到静态变量或者静态方法。
静态变量是跟类相关联的,类的所有实例共同拥有一个静态变量,访问的时候用类名.静态变量名或者类名.静态方法名来访问。
什么时候会用到静态变量呢,举个例子,count变量,用于计量。静态方法不能调用实例变量,只能调用静态变量。同时,它也不能调用this,它不属于任何一个实例。
static代码块,最先加载,可以用于静态变量的初始化。
4:this和super
super是子类调用父类成员属性时才会用到的关键字。子类初始化时,会默认调用父类的无参构造方法,即使子类初始化调用的是有参构造方法,它调用的依旧是父类中的无参构造方法。
this就代指实例对象本身,可以通过this,调用构造方法this(),或者调用成员属性this.变量名;this.方法();
super和this不能同时调用
5:封装
封装就是提高程序的安全性和规范性。在编程时,要清楚四种修饰符private、默认、protect、public的作用范围和意义。他们的限制性是逐渐减弱的。
除了修饰符,还有,当用户输入非法数据时要拒绝输入。举个例子,在set方法中,限制年龄范围
PS:这里要特别注意,各种命名的规范性
6:所有类都直接或间接的继承于object类,子类经常会重写它的equal方法和toString方法。当某一个类用final关键字修饰后,其是最终类,不可继承。若是修饰变量,它就不可改变,变成了个常量。如何记忆final关键字,final(最终的).
我保存了很多有用的资料:
1:java命名规范
2:package和import的使用
3:this关键字的用法
4:单一职责原则
5:封装
6:封装综合案例
7:关于javadoc命令的教辅
8:继承上、下
9:面向对象
10:单利模式
链接:https://pan.baidu.com/s/12EJ8fDzm-HidOgxkKedlWw 密码:91hr
有兴趣的同学可以下载了解一下,并且欢迎同学来指正不足。
JAVA之路(二)的更多相关文章
- Java之路——名词解释(一)
一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...
- Java之路——敬JAVA初学者(作者:MoMo)
作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊! 要离开学校了,还是想留 ...
- Java之路——环境配置与编译运行
本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解 ...
- Java之路 ——初识Eclipse
零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...
- Java之路——初识Eclipse
零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...
- 实战Java虚拟机之二“虚拟机的工作模式”
今天开始实战Java虚拟机之二:“虚拟机的工作模式”. 总计有5个系列 实战Java虚拟机之一“堆溢出处理” 实战Java虚拟机之二“虚拟机的工作模式” 实战Java虚拟机之三“G1的新生代GC” 实 ...
- Java设计模式(二) 工厂方法模式
本文介绍了工厂方法模式的概念,优缺点,实现方式,UML类图,并介绍了工厂方法(未)遵循的OOP原则 原创文章.同步自作者个人博客 http://www.jasongj.com/design_patte ...
- Java 验证码、二维码
Java 验证码.二维码 资源 需要: jelly-core-1.7.0.GA.jar网站: http://lychie.github.io/products.html将下载下来的 jelly ...
- Java入门(二)——果然断更的都是要受惩罚的。。。
断更了一个多月,阅读量立马从100+跌落至10-,虽说不是很看重这个,毕竟只是当这个是自己的学习笔记,但有人看,有人评论,有人认同和批评的感觉还是很巴适的,尤其以前有过却又被剥夺的,惨兮兮的. 好好写 ...
随机推荐
- Go指南 - 笔记
Go指南 - 笔记 标签(空格分隔): Go Go指南 一.基础 1.包 每个Go程序都是由包构成的. 程序从main包开始运行. 包名与导入路径的最后一个元素一致 2.导入 分组导入:使用圆括号组合 ...
- 洛谷 P4018 Roy&October之取石子
洛谷 P4018 Roy&October之取石子 题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取 p^kpk 个(p为质 ...
- 3- 功能2:基于forms组件和ajax实现注册功能
1.forms组件的注册页面 url from django.urls import path, re_path from blog import views from django.views.st ...
- Codeforces 374 C. Travelling Salesman and Special Numbers (dfs、记忆化搜索)
题目链接:Travelling Salesman and Special Numbers 题意: 给了一个n×m的图,图里面有'N','I','M','A'四种字符.问图中能构成NIMA这种序列最大个 ...
- java 迭代器只遍历了一次的解决方案
/** * 注意:因为迭代器只能遍历一次 所以每次用完都要重新填充一次 否则会出现只替换了一次检查配置项的情况 * templateJsonIterator = templateJsonObject. ...
- SpringMVC 异常信息ASM ClassReader failed to parse class file的问题解决
1. 环境信息: Spring 3.2.0, JDK 1.8.0 2. 运行简单的程序,出现以下错误信息: 2. 运行简单的程序,出现以下错误信息: Caused by: org.spring ...
- html5新特性data_*自定义属性使用
HTML5规范里增加了一个自定义data属性. 这个自定义data属性的用法非常的简单, 就是你可以往HTML标签上添加任意以 "data-"开头的属性, 这些属性页面上是不显示的 ...
- 解决在控制层springmvc框架发出的400状态的错误
错误场景: 错误分析: 这也是我第一次遇到这个类型的异常,400响应状态代表:客户端发出的请求中携带的参数与服务器端接受的参数类型不匹配,进一步就是说我后台的实体类中数据类型为Date,而前台传递过来 ...
- Linux shell 编写(1)
shell脚本的编写步骤 1.创建以.sh为扩展名的文件 touch 2.编辑脚本文件 vim 3.增加脚本文件执行权限 ...
- Fortran的数组与指针
个人理解,欢迎指正 指针就是记录数据的内存地址的变量.指针可以指向单个变量,也可以指向数组. 数组是一个概念,是若干个类型相同的元素的有序集合.在Fortran语言中,数组中存放的元素,可以是整数,实 ...