java 小知识集锦

来源:互联网 发布:js正则匹配数字和字母 编辑:程序博客网 时间:2024/05/17 21:34

创建对象:new   例: Test t=new Test();

机数:random

布尔值:boolean 返回值类型为true 或false 

例:Integer a=new Integer(12);

Integer b=new Integer(12);

System.out.println(a==b);//返回布尔值

equals() :引用比较

例:System.out.println(a.equals(b)); //返回布尔值

导包:import java.util.Scanner; import java.util.*;

 java注释:
//单行注释
/*
多行注释
*/
/**
文档注释
*/

标识符的命名规范:
字母、数字、下划线"_"  "$"
不能为数字开头,只能以字母、_、$开始
特殊符号  $  _
严格区分大小写
不要与关键字冲突
驼峰法
类名:首字母大写
------------------------------------------------------------
变量:变量是内存(堆栈)中的一块存储区域,是存储数据的基本单元;
 如何声明变量:
    数据类型  变量名;
  如何赋值:
      变量名  = 值;

   声明变量并赋值
    数据类型  变量名  =值;
------------------------------------------------------------
\t :表示制表符,即显示一个空格

类:具有相同特点和行为的一组事物的集合
对象:具有具体的特点和行为的事物
    对象就是类的具体表现形式
类是对象的模板

------------------------------------------------------------

oop

构造方法:
  实例化对象
  new 
  有虚拟机自动调用的,所以一般public 
  访问权限   类名(){
  
  }
类名  对象名  = new 构造方法();
类中默认自带一个无参数的构造方法 
一旦类中定义了带参数的构造方法,那么无参数的构造方法消失。要使用必须显示表示
最佳实践:
  一个带所有参数的构造方法和不带参数的构造方法 
this:当前对象本身
------------------------------------------------------------ 
重载:
  
   参数的个数不同
    类型不同
类型的顺序不同
方法名相同
作用于同一作用域
static:
 
 修饰变量--》静态变量  --》归属类   类名.变量名
   
修饰方法  --》静态方法             类名.方法名相同


    static{  
//类定义加载的时候被执行,且在实例化之前

}

{  //代码块,每次在实例化对象之前被调用

}

package:  com.yc.XX;    包名小写   代码的第一行位置
   import   com.yc.xx.Test; 
 ------------------------------------------------------------  
继承:
继承是利用现有的类创建新类的过程,
现有的类称作基类(或父类),
创建的新类称作派生类(子类)。
继承语法:
    extends
访问权限  class  子类名  extends  父类名{
//子类继承父类中非私有的属性和方法
//子类可以拥有自己特有的方法和属性
//子类可以重写父类中的方法 

    //子类对象访问父类中的方法,如果该方法被子类重写,那么子类对象访问的是重写之后的方法

}

 ------------------------------------------------------------  

Java:只允许单继承 


super:
   1.表示父类对象本身
    2.作为父类的构造方法存在
super(参数列表);

访问权限:
public :公共的,不受限制,本类或他类都可以访问
protected:受保护的 ,包内友好,父子友好 
缺省的:没有任何权限修饰符    int id ;  包内友好  
private:本类中访问 

public: 所有类
protected:包内友好   父子友好
缺省的 :包内友好
private :本类访问

final: 最终的
修饰的变量就是常量
修饰类:  最终类  不能被继承
修饰方法: 最终的方法  不可以重写

 引用转型:
  父类引用指向子类对象
  BasicClass  c  =  new SonClass();

------------------------------------------------------------  
多态:便于扩展
使用父类的引用,调用同一个名称的方法,可以得到不同的
调用结果,这就是java中的多态。即:同一函数,多种形态
多态包括:
动态多态(重写):运行时多态,在运行时才确定调用哪个方法
必须要有继承的存在
子类必须重写父类中的该方法
必须由父类的引用指向子类的对象,并且是通过父类的引用调用被重写的方法

静态多态(重载):编译多态,在编译时决定调用哪个方法
  只要构成了重载,形成了静态多态的条件
  静态多态与是否发生继承没有必然联系
  
new谁调用谁只针对于方法,对于属性而言,引用名是谁就调谁的属性
  
在某些情况下,父类中无法(或没有必要)提供被覆盖方法的具体实现,
那么可以将此方法声明为抽象方法
使用关键字 abstract 
[访问权限]  abstract  返回值类型 方法名(形参列表);
抽象类:如果某个类中包含有抽象方法,那么该类必须定义为抽象类
[访问权限] abstract class  类名{

}
注意事项:
抽象类不可以直接实例化,只可以用来继承
抽象类的派生子类应该提供对其所有抽象方法的具体实现
如果抽象类的派生子类没有实现其中所有的抽象方法,那么该派生子类仍然是一个抽象类,

只能继承,不能实例化
抽象类中可以包含非抽象的方法,
构造方法和静态方法不可以修饰为 abstract

在某个类中所有的方法都是抽象方法时,可以考虑将该类定义为接口


interface :

  [访问权限] interface 接口名{
//成员列表
}
实现接口:
  与抽象类相似,不可以实例化,只能用于实现
  实现接口的关键字:implements 
  [访问权限]  class  实现类名  implements 接口名{
//成员列表
 }

 ------------------------------------------------------------  

0 0
原创粉丝点击