Java学习笔记

定义变量类型字符串为什么是大写的?

java中变量分为基本类型和对象类型
题主说的其它类型小写是指的基本类型int, char, double等
String类不是基本类型而是对象类型,所以按java约定是首字母大写的。(String是char的数组形式)

在 Java 中,字符串被作为 String 类型的对象处理。 String 类位于 java.lang 包中。默认情况下,该包被自动导入所有的程序。

IDEA中快速输入

system.out.println(); 快速输入的方法可以直接输入 sout 按住tab键,编辑器会自动补全。
但是这个方式只能在成员方法中使用,如果直接在类中,编辑器不能自动补全,可能补全的是其他的代码。

快速创建一个main 类,psvm 按住tab 编辑器自动补全。

快速创建一个for循环,fori 按住tab 编辑器自动补全。

static 静态修饰符

static 不仅可以修饰属性也可以修饰方法,修饰属性被称为静态变量,修饰方法被称为静态方法或者类方法。

静态方法和非静态方法

1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。
2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。

静态初始化块

静态初始化块,初始化块,构造方法三者的执行顺序
http://blog.csdn.net/bettarwang/article/details/26138879

包的命名规范

包名称规范全部小写,并用英文句号分割。

访问修饰符

Java中有三个访问修饰符,public,private,protected。
需要注意的事,private修饰符修饰的属性和方法,子类无法继承。

关键字this

this 表示当前对象,类似于Python中的self关键字。
this.属性 调用当前对象的属性
this.方法 调用当前对象的方法

通常封装对象属性的时候使用该关键字;

内部类

在Java中允许在类的内部定义类,该类被称为内部类(Inner Class),与之对应的,包含内部类的类成为外部类。

问:那为什么要将一个类定义在另一个类里面呢?清清爽爽的独立的一个类多好啊!!

答:内部类的主要作用如下:

  1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类

  2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据

  3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便

问:内部类有几种呢?

答:内部类可分为以下几种:

成员内部类 静态内部类 方法内部类 匿名内部类

继承

是类和类的一种关系,is a 的关系,Java中是单继承的,一个类只有一个父类。

继承类中的初始化

先初始化父类,在初始化子类。
属性的初始化先与构造方法的初始化。

final关键字

fianl关键字可以用来修饰类,属性和方法。
final修饰类则类不允许被继承;
final修饰方法,则方法不允许被重写;
final修饰属性,则属性必须有值,或者在构造方法中复制;

super关键字

super通常用来指定父类中的属性或者方法
super.属性 调用父类的属性
super.方法 调用父类的方法

子类的构造方法隐式的调用super方法,同事必须在构造方法的第一行。

多态

1.引用多态
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象

2.方法多态
创建本类对象时,调用的方法为本类方法
创建子类对象时,调用的方法为子类重写的或者继承的方法

引用类型转换

向上类型转换(隐式或自动类型转换),从大类型向小类型的转换。小杯子倒入大杯子;
向下类型转换(强制类型转换),从小类型向大类型的转换。存在风险

抽象类

约束子类必须有哪些方法,不关注子类的实现,但约束子类方法;

接口

接口定义了一批类所要遵守的规范,他只规定某些类必须提供什么方法;

方法重载

方法重载允许一个类同时存在一个以上的同名方法,只要这些方法的参数个数或者类型不同即可。
在Python中实际上不存在方法重载,因为Python允许传参时有不定参数,意味着可以接收一个或多个参数或者没有参数,这里是有所区别的。

展开阅读全文

没有更多推荐了,返回首页