新手上路---Java学习知识梳理
我随笔
我相信也有那么一些人跟我一样,脱下军装后对未来感到迷茫,不知所措甚至怀疑起自己的能力,自身体会的经历过才能明白其中的辛酸!归咎一切:心态,信心,自信!再穷不过乞讨,不死终将出头。好了,闲言碎语打住,收好自己心态,踏上新征程!
总结面向对象编程基础知识
一,类和对象
1,什么是类? ,2 什么是对象?
1,类是抽象的概念,仅仅是模板。 2,对象是一个你能狗看得到,摸得着的具体实体。
二,使用对象的步骤
1,创建对象
类名 对象名 = new 类名();
2,引用对象成员:使用“.”进行以下操作
引用类的属性:对象名.属性
引用类的方法:对象名.方法名()
三,如何定义一个方法?
语法为: public 返回值类型 方法名(){
//此处编写方法体
}
方法返回值的注意事项:1,如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该值的类型。 2,如果方法没有返回值,返回值类型为void
四,如何理解方法的调用?
方法之间允许相互调用,不需要知道方法的具体实现,实现重用,提高效率。
五,如何使用带参数的方法
1,<访问修饰符>返回类型<方法名>(<形式参数列表>){
// }
2,调用带参数的方法
对象名.方法名(参数1,参数2....,参数n)
六,构造方法
访问修饰符 构造方法名(){ //初始化代码 }
注: 1,无返回值类型 2,方法名与类名相同 3,可以指定参数
作用:对象初始化 (系统提供默认无参构造方法)
七,构造方法重载
1,自定义构造方法 : ①方法名相同 ②参数项不同 ③与返回值,访问修饰无关
2,什么是方法重载?
①同一个类中 ②方法名相同 ③参数个数或类型不同 ④与返回值,访问修饰符无关
八,this关键字的用法
1,调用属性 如:this.属性名
2,调用方法 如:this.print();
3,调用构造方法 如:this(); 注:如果使用必须是构造方法中的第一条语句
九,什么是封装?
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信 息的操作和访问。
1,为什么使用封装? 属性随意访问,不合理的赋值。
2,封装的两个大致原则
①把尽可能多的东西藏起来,对外提供便捷的接口
②把所有的属性藏起来
3,封装的步骤
①修改属性的可见性 注:设为private
②创建公有的getter/setter 注:用于属性的读写
③在get/setter方法中加入属性控制语句 注:对属性值的合法性进行判断
4,封装有什么好处?
①斑鱼使用者正确使用系统,防止错误修改属性。
②有助于系统之间的松耦性,提高系统独立性。
③提高软件的可重用性
④降低了构建大型系统的风险
十,为什么需要包?
答: 1,文档分门别类,易于查找和管理
2,使用目录解决文件同名冲突问题
1, 包的作用?
①允许类组成较小的单元(类似文件夹),易于找到和使用相应的文件
②防止命名冲突区分名字相同的类
③有助于实施访问权限控制
2,如何创建包?
package cn.inherit; //声明包
用Package声明包,以分号结尾
3,包的命名规范
①包名由小写字母组成,不能以圆点开头或结尾。
②包名之前最好加上唯一的前缀,通常使用组织倒置的网络域名。
③包名后续徐芬依不同机构内部的规范不同而不同。
十一,static修饰符
1,成员变量 注:静态变量,可以直接通过类名访问
2,成员方法 注:静态方法,可以直接通过类名访问
3,代码块 注:静态代码块当JAVA虚拟机加载时,就会执行该代码块
4,类的成员变量包括什么?
1, 类变量(静态变量)
①被static修饰的变量
②在内存中只有一个拷贝
③ 类内部,可以任何方法直接访问静态变量
④其他类中,可以直接通过类名访问
2,实例变量
①没有被static修饰的变量
②每创建一个实例,就会为实例变量分配一次内存,实例变量可以在内存中有多拷贝,互不 影响。
3,static变量使用
①能被类的所有实例共享,可作为实例之间进行交流的共享数据。
②如果类的所有实例包含一个相同的常量属性,可把这个属性定义为静态常量类型,从而 节省内存空间。
4,static方法
静态方法:可直接通过类名访问
①静态方法中不能使用this和super
②不能直接访问所属类的实例变量和实例方法
③可直接访问类的静态常量和静态方法
实例方法:通过实例访问
①可直接访问所属类的静态变量,静态方法,实例变量和实例方法
静态方法必须被实现
main()就是最常用的静态方法
继承 多态 接口 异常 学一点更新一点 以来为自己总结 二来与像我一样新手共勉 不足之处欢迎提出批评与指正
新手上路---Java学习知识梳理的更多相关文章
- java基础知识梳理
java基础知识梳理 1 基本数据类型
- Java学习知识体系大纲梳理
感悟 很奇怪,我怎么会想着写这么一篇博客——Java语言的学习体系,这不是大学就已经学过的课程嘛.博主系计算机科班毕业,大学的时候没少捧着Java教程来学习,不管是为了学习编程还是为了期末考个高分,都 ...
- 新手的java学习建议
前言 进入IT领域,就像进入大海—浩瀚而广阔.然而,它又很容易让人迷茫,不知所措.所以,在IT的海洋中,找好一艘船特别重要,这艘船带你前进.减少迷失.这艘船或许是一个人,或一本书,又或许是一篇文章. ...
- java 学习知识汇总
一:常见模式与工具 学习Java技术体系,设计模式,流行的框架与组件是必不可少的: 常见的设计模式,编码必备 Spring5,做应用必不可少的最新框架 MyBatis,玩数据库必不可少的组件 二:工程 ...
- 《面试补习》- Java集合知识梳理
一.ArrayList ArrayList 底层数据结构为 动态数组 ,所以我们可以将之称为数组队列. ArrayList 的依赖关系: public class ArrayList<E> ...
- Java Web知识梳理
今天给内部做了个培训,貌似搞错了对象,不该对新人讲这么原理性的东西. anyway,还是放上来吧,不知道有没有人能理清其中的逻辑 ^ _ ^ 问题:为什么要用tomcattomcat: servlet ...
- Java基础知识梳理《一》
一.Java数据类型(简单称之为“四类八种”) java 基本的数据类型长度都是固定的,好处是在实现跨平台时就统一了. 1.整型 byte short int long (分别是1,2,4,8个字节) ...
- 新手向:Java基础知识
Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承接口的抽象方法. 接口并 ...
- Java简单知识梳理
1. Java是单根继承结构:每个类都继承于Object类 ,这也就保证了每个对象都具备某些功能 2. Java类权限关键字: public -> protected -> default ...
随机推荐
- iOS开发之数据存储之Core Data
1.概述 Core Data框架提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite3数据库文件中,也能够将保存在数据库中的数据还原成OC对象.在此数据操作期间,不需要 ...
- iOS开发之计算文字尺寸
/** * 计算文字尺寸 * * @param text 需要计算尺寸的文字 * @param font 文字的字体 * @param maxSize 文字的最大尺寸 */ - ( ...
- express创建网站
Express 在初始化一个项目的时候需要指定模板引擎,默认支持Jade和ejs. 这里我们使用ejs模板引擎:(关于ejs的介绍可以先从百科里面了解一个大概)EJS是一个JavaScript模板库, ...
- centOS下调整swap
[root@localhost /]# mkdir swap [root@localhost /]# cd swap [root@localhost swap]# dd if=/dev/zero of ...
- 【Egret】3d 服务器配置
在服务器MIME里添加这些类型就可以了:
- Python之路-操作系统&网络基础
一.为何要有操作系统 没有操作系统的话,计算机同样可以运行,但是程序员要了解到计算机底层各种各样的细节,而操作系统聪明地封装起来了底层这些繁杂的操作,通过向程序员开放一个个的接口,来最终使我们实现对底 ...
- DCN路由操作
offset */interface in/out access-list/prefix-list <1-16> // 修改路由偏移量 RIP偏移列表 ...
- 跟着刚哥梳理java知识点——深入理解String类(九)
一.String类 想要了解一个类,最好的办法就是看这个类的实现源代码,来看一下String类的源码: public final class String implements java.io.Ser ...
- sublime前端开发工具常用技巧
ctrl+N//新建文件夹ctrl+shift+p//打开命令行!,ctrl+E//快速生成html模板ctrl+E//自动补齐ctrl+P(#@)//goto 任何地方,其中#查找元素,@查找样式c ...
- Robotframe work之环境搭建(一)
准备安装如下:Python2.7.10.robot framework3.0.2.wxPython 2.8.12.1.robot framework-ride 1. 官网下载安装python,目前wx ...