Java基础(容易忽略重要知识整理!待更新…)
第一次写博客,好好学习哈哈…
出自B站狂神说笔记=====
文章目录
一、类型转换
二、变量命名
三、逻辑运算符
四、位运算符
左移<<
2<< 3=16
右移>>
2>>3(右移就是*2的负几分之一)
五、用户交互Scanner
六、Switch选择结构
七、For增强循环
八、方法的定义
1、方法的定义
2、方法重载与重写区别
九、命令行传递参数
十、可变参数
十一、递归
十二、数组
可以用以下方式定义数组:
int[] x=new int[100]; //(最好用这个)
或者下面两句也可以:
int[] x; //声明一个数组
x=new int[100] //创建一个数组
数组的静态初始化有两种方式:
类型[] 数组名 =new 类型[] {元素,元素,元素...};
类型[] 数组名 =new {元素,元素,元素...};
多维数组定义的常见方式:
1.int[] [] arr =new int[3][4];
2.int[] [] arr =new int[3][];
3.int[] [] arr ={{1,2,{3,4,5,6},{7,8,9}}
行值不能为空
扩展:
数组没有length()方法,有length()属性:
String有length()方法
十三、Java内存分析
十四、Arrays类
1.简介
2.Java中Arrays类的常用方法
详细请看链接:
Java中Arrays类的常用方法
十五、对象
1、构造方法
一旦定义了有参构造,无参构造也要显示定义;
构造方法是类中的特殊成员,它会在类实例化对象时被自动调用。
十六、继承
十七、多态
在同一个方法中,这种由于参数类型不同而导致执行效果各异的现象就是多态。继承是多态得以实现的基础。
在Java中,为了实现多态,允许使用一个父类类型的变量来引用一个子类型的对象。
animal类,cat类;cat继承animal类
animal cat = new cat();(向上转型!)
cat.父类中的方法(正确!)
cat.子类中的方法(错误!)
cat cat = new animal();(向下转型!需强制转换!)
强制转换
十八、static关键字
static 执行顺序
如果不继承别的类,那么执行顺序应该是:
static代码块–>普通代码块–>类构造方法
如果继承了别的类,那么执行顺序应该是:
父类static代码块–>子类static代码块–>父类普通代码块–>父类构造方法–>子类普通代码块–>子类构造方法
十九、接口
如果一个抽象类中的所有方法都是抽象的,则可以将这个类用另外一种方式来定义,即接口。接口是由常量和抽象方法组成的特殊类,是对抽象类的进一步抽象。
在定义接口时,需要使用interface关键字来声明,其语法格式如下。
[public] interface 接口名 [extends接口1,接口2...]{
[public] [static] [final]数据类型 常量名=常量值;
[public] [abstract]返回值 抽象方法名(参数列表);
}
在上面的语法中,一个接口可以有多个父接口,它们之间用逗号隔开。Java 使用接口的目的是为了克服单继承的限制,因为一个类只能有一个父类,而一个类可以实现多个接口。接口中的变量默认使用“public static tinal”来修饰,即全局常量;接口中定义的方法默认使用"public abstract”来修饰,即抽象方法。如果接口声明为pubic,则接口中的变量和方法全部为public。
由于接口中的万法都是抽象方法,因此不能通过实例化对象的方式来调用接口中的方法。此时需要定义一个类,并使用implements关键字实现接口中所有的方法。一个类可以在继承另一个类的同时实现多个接口,这些接口在imptenents 子句中要使用英文逗号(,)隔开。