java基础整理1
1、匿名对象:new persion().tell();这样的,它只开辟栈内存,没有栈引用的关系
2、构造方法的名称必须与类名称一致,构造方法的声明处不能有任何返回值类型的声明,不能在构造方法中使用return返回一个值
3、String有两种比较方式:一种是使用“==”完成,比较的是地址值;另一种是使用"equals"方法完成,比较的是具体的内容
4、String类两种实例化方法的区别:
直接赋值:String str1 = "hello"; String str2 = "hello"; String str3 = "hello"; 那这两个地址是相同的,可以有效节省堆内存
通过关键字new赋值:String str = new String("hello");实际是开辟两个内存对象
5、字符串内容的改变,改变的是内存地址的引用关系
6、this关键字的作用:表示类中的属性this.name = name;调用本类的构造方法,构造方法可以互相调用,使用this(参数)的形式完成,注意在使用this关键字调用其他构造方法时,this()调用方法的语句只能放在构造方法的首行,在使用this调用类中其他构造方法时,至少有一个构造方法是不用this调用的,以防止递归调用的情况出现;表示当前对象
7、java常用的内存区域:栈内存-->可以保存对象的名称(更准确地说是保存了引用的堆内存空间的地址);堆内存-->保存每个对象的具体属性;全局数据区-->保存static类型的属性;全局代码区-->保存所有的方法定义
8、使用static方法,不能调用非static的属性或方法
9、java代码块:普通代码块-->使用{}包含的,里面的变量属于局部变量,不能在代码块之外使用;构造块-->将代码块直接定义在类中,构造块优先于构造方法执行,且执行多次,只要一有实例化对象产生,就执行构造块中的内容;静态代码块-->使用static关键字声明的代码块,静态代码块优先于主方法执行,普通类中定义的静态块优先于构造方法执行,不管有多少个实例化对象产生,静态代码块只执行一次。静态代码块的作用主要用于静态属性的初始化
10、
11、final关键字声明类、属性、方法:使用final声明的类不能有子类;使用final声明的方法不能被子类覆写;使用final声明的变量即成为常量,常量不可以修改。
12、抽象类:包含一个抽象方法的类必须是抽象类;抽象类和抽象方法都要使用abstract关键字声明;抽象方法只需要声明而不需要实现;抽象类必须被子继承,子类(如果不是抽象类)必须覆写抽象类中的全部方法;抽象类可以继承抽象类
13、接口是一种特殊的类,里面全部是由全局常量(static final)和公共的抽象方法(abstract)组成,也可以简化定义不写,一个接口不能继承一个抽象类,但是却可以通过extends关键字同时继承多个接口,实现接口的多继承,interface 子接口 extends 父接口A, 父接口B,...{}
14、对象的多态性:对象向上转型:父类 父类对象 = 子类实例; 对象向下转型: 子类 子类对象 = (子类)父类实例;
15、instanceof关键字判断一个对象到底是哪个类的实例,格式:对象 instanceof 类 -》 返回boolean类型
16、
以上的正则,如果想驱动起来,则必须依赖Pattern类和Matcher类,Pattern主要是表达一个规则的意思,即:正则表达式的规则需要在Pattern类中使用。Matcher类主要表示使用Pattern指定好的验证规则。
java基础整理1的更多相关文章
- JAVA基础整理-集合篇(一)
集合作为JAVA的基础知识,本来感觉自己理解的很清楚了,但是在最近的一次面试中还是答得不尽如人意!再次做一下整理,以便加深理解以及随时查阅. 首先,java.util包中三个重要的接口及特点:List ...
- Java基础整理
一.Java中的遍历 1.在java开发中会碰到遍历List删除其中多个元素的情况,如果使用一般的for循环以及增强的for循环,代码会抛出异常ConcurrentModificationExcept ...
- Java基础整理(1)
1.源代码的文件名必须与公共类(public)的类名一致,而且一个源代码文件中最多只能有一个公共类(public) 2.注释: 3种 行注释 以双斜线 // 开始 段落注释 /* 注释内容 ...
- Java基础整理之字节、数组、字符串、面向对象
一.字节(8个)8bit = 1B或1byte1024B = 1Kb 二.强制类型转换顺序及其大小顺序遵循向上转换的规则byte,short,char -> int -> long -&g ...
- java基础整理总结篇(1)
>>java数据区域,大致分以下几种 寄存器:位于cpu内部,寄存器的数量有限,所以寄存器根据需求分配.不能直接控制它. 堆栈:位于通用RAM(随机访问存储器)中,通过堆栈指针可以从处理器 ...
- 6 Java基础整理 第六-八章
1.封装 封装的目的是简化编程和增强安全性. 简化编程是指,封装可以让使用者不必了解具体类的内部实现细节,而只是要通过提供给外部访问的方法来访问类中的属性和方法 增强安全性是指,封装可以使某个属性只能 ...
- [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html 谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...
- Java基础进阶整理
Java学习笔记整理 本文档是我个人整理的,首先是想通过完成本文档更加扎实自己的基础加强对java语言的理解,然后就是想给入了门的同志们做下贡献. 当然,本文档主要是对java语言基础(当然还有很多基 ...
- 转载:[Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
原文:http://www.cnblogs.com/wang-meng/p/5898837.html 一:继承.抽象类与接口区别.访问控制(private, public, protected,默认) ...
随机推荐
- 3.IP地址分类_规划_子网掩码
IP地址分类_规划_子网掩码 3.1MAC地址 网卡的身份证号———MAC地址 MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20: ...
- 第五篇 SQL Server安全架构和安全
本篇文章是SQL Server安全系列的第五篇,详细内容请参考原文. 架构本质上是一个数据库对象,其他对象的一个容器,在复杂的数据库中它能够很容易的管理各组对象.架构具有重要的安全功能.在这一篇你会学 ...
- less 初试
第一次接触less,做些记录. 官网 民间中文文档 less notepad++插件 1. 支持变量声明 支持颜色.大小等相加 @nice-blue: #5B83AD; @light ...
- 参数db_ultra_safe
db_ultra_safe参数设置控制保护级别的其它参数的默认值 可以取的值有:off.data_only.data_and_index.默认值是off -off:不影响db_block_checki ...
- php:mysqli扩展
mysqli功能概述:http://php.net/manual/zh/mysqli.summary.php 代码(基本的用法):貌似可以防止sql注入 $root = "root" ...
- Angular.js+Bootstrap实现手风琴菜单
说是Angular.js+Bootstrap实现手风琴菜单,其实就是用了Bootstrap的样式而已. 上一篇实现了表格+分页,接着学习实现的Demo. 主要练习自定义指令,向指令中传递参数,老规矩先 ...
- PostgreSQL Replication之第十二章 与Postgres-XC一起工作(1)
在本章中,我们希望将我们的注意力集中在写可扩展,多主,同步,对称和PostgreSQL的称为Postgres-XC(PostgreSQL eXtensible Cluster)的透明复制方案.该项目的 ...
- FB面经prepare: task schedule II
followup是tasks是无序的. 一开始是有序的,比如说1, 1, 2, 1,一定要先执行第一个task1,然后等task1恢复,再执行第2个task1,再执行task2..... follow ...
- map容器
map容器一般用于对字符串进行编号,主要用于建图方面,例如把城市名按数字进行编号 #include"stdio.h" #include"string.h" #i ...
- nyist 596 谁是最好的Coder
http://acm.nyist.net/JudgeOnline/problem.php?pid=596 谁是最好的Coder 时间限制:1000 ms | 内存限制:65535 KB 难度:0 ...