面向对象的程序设计有封装性,继承性,多态性.
数组排序,仅限于各种基本数据类型.包含浮点型,字符型等.
可直接使用java.util.arrays.sort(数组名称).
数组的复制
System.arraycopy()
数组的输出
foreach语法
for(数据类型 变量名称:数组名称)
{
}
一个类中如果明确的声明了一个构造方法,那么程序在编译时将不会再生成默认的构造方法.
匿名对象
匿名对象就是没有明确给出名字的对象,一般匿名对象只使用一次,而且匿名对象只在堆内存中
开辟空间,而不存在栈内存的引用
一个字符串就是String的匿名对象
如果一个字符串已经被一个名称所引用,则以后再有相同的字符串声明时,就不会再重新开辟空间
如果使用new关键字声明字符串,那不管如何都会再开辟一个新的空间.
字符串的内容一旦声明则不可改变
字符串变字符数组 tochararray;
从字符串中取出特定的字符 charat;
查找一个指定的字符串是否存在:indexof(),
可以返回指定的字符串的位置,如果不存在则返回-1.
按照指定的字符串拆分字符串:split
字符串的大小写转换,touppercase,tolowercase.
判断是否以指定的字符串开头或结尾, startswith,endswith.
字符串的比较:equals
不区分大小写的字符串的比较:equalsignorecase.
将一个指定的字符串替换成其他的字符串:replaceall.
this关键字
1.表示类中的属性。
2.可以使用this调用本类的构造方法。
3.this表示当前对象.
构造方法是在实例化对象时被自动调用的,也就是说在类中的所有方法中,只有构造方法是被
优先调用的,所以使用this调用构造方法必须只能放在构造方法的第一行
static声明属性,此属性称为全局属性,该属性是所有对象共享的.
java中常用的内存区域
1.栈内存空间:保存所有对象的名称(更准确地说是保存了引用的堆内存空间的地址)
2.堆内存空间:保存每个对象的具体属性内容
3.全局数据区:保持static类型的属性
4.全局代码区:保存所有的方法定义.
非static声明的方法可以去调用static声明的属性或方法.但是static声明的方法是不能调用非static类型
声明的属性或方法.
构造块:构造代码块是直接写在类中的代码块
构造块优先于构造方法执行,而且每次实例化对象时都会执行构造块中的代码,会执行多次.
静态代码块是使用static关键字声明的代码块
静态代码块优先于主方法执行,而在类中定义的静态代码块,优先于构造块执行,而且
不管有多少个对象产生,静态代码块只执行一次.
class demo
{
static {
}
}
子类对象的实例化过程
在继承的操作中,对于子类对象的实例化也是有要求的,即子类对象在实例化之前必须
首先调用父类中的构造方法后,再调用子类自己的构造方法.
继承关系中方法的覆写
所谓方法的覆写就是指子类定义了与父类中同名的方法,但是在方法覆写时,必须考虑到权限,即被子类覆写的方法不能拥有比父类方法更严格的访问权限
如果要在子类的方法中访问父类的方法,则使用super关键字即可.
super.方法()形式即可访问父类中的相关方法.
如果现在将父类的一个方法定义成private访问权限,在子类中将此方法声明为default访问权限,这
不算是方法的覆写.
如果子类和父类声明了相同名称的属性,则在子类中直接访问时一定是采用 “就近访问原则",即先
找到本类中的属性,如果此时是要调用父类中的属性,直接使用 super.属性 格式即可.
浙公网安备 33010602011771号