JAVASE

^只有真真和假假为假

!  !true=false

$只有都为true为真其余都为假

l 只有双false为假

双的左边对的就不执行 其余都一样

 一个数^同一个数两次那么等于一个数而不是那个数 比如(3^5)^5为三

if else 可以和三元运算符通用 当有具体结果时  用三元运算符

if可以对具体的值进行判断,可以对区间进行判断,对布尔类型的表达式进行判断

switch对固定的值,具体的值,进行判断

X%X 相同数值为0

无限循环while(true){}   for(;;){}

一般有循环次数的for条件whilel,另外for循环结束后变量消失 while结束后还能使用变量

栈内存:变量  变量所属作用于一旦结束 变量就自动释放

堆内存:数组和对象 你凡是new的都在堆里 堆内存的变量只都有默认值 类型不同值不同 int是0  boolean false char

匿名函数:对象方法仅使用一次 

如:Car c=new Car();

c.run();

简写成 new Car().run();

private:

class Person{
//私有的只在本类中有效 即使创建对象也访问不到
private int age;
void speak(){
System.out.println("age"+age);
}
}
public class JiChen_demo {

public static void main(String[] args) {

//这里即使new也访问不了
}

}

构造函数:没有返回值因为它是方法 方法名和类名一致  没有返回值

 一般没有定义构造函数默认也有函数比l如class demo{//里面有demo(){}}

什么时候用呢?在描述事物时,已经存在一些细节那么用定义在构造函数里

  1. class Person{  
  2.        private String name ;  
  3.        private int age ;  
  4.   
  5.        //定义一个Person类的构造函数  
  6.        //构造函数,而且是空参数的  
  7.       Person(){  
  8.             System.out.println("person run");  
  9.       }  
  10.   
  11.        public void speak(){  
  12.             System.out.println(name + ":" + age);  
  13.       }  
  14. }  
  15.   
  16. class ConsDemo{  
  17.        public static void main(String[] args){  
  18.              //构造函数:构建创造对象时调用的函数  
  19.              //作用:可以给对象进行初始化  
  20.            Person p = new Person();  
  21.             p.speak();  
  22.       }  
  23. }  
  1. class Person_1{  
  2.           private String name ;  
  3.           private int age ;  
  4.         
  5.           Person_1(){  
  6.                    name = "baby" ;  
  7.                    age = 1;  
  8.                    System.out.println("person run");  
  9.           }  
  10.   
  11.           //如果有的孩子一出生就有名字  
  12.           Person_1(String n){//有参构造器  
  13.                  name = n;  
  14.           }  
  15.               
  16.            //如果有的孩子一出生就有名字和年龄  
  17.           Person_1(String n, int a){//有参构造器  
  18.   
  19.                  name = n;  
  20.                  age = a;  
  21.           }  
  22.               
  23.           public void speak(){  
  24.               System.out.println(name + ":" + age);  
  25.           }  
  26. }  
  27.   
  28. class ConsDemo_1{  
  29.        public static void main(String[] args){  
  30.            Person_1 p1 = new Person_1();//创建对象Person_1的同时,已经调用了无参构造函数了。  
  31.             p1.speak();  
  32.             Person_1 p2 = new Person_1("家仪" );  
  33.             p2.speak();  
  34.             Person_1 p3 = new Person_1("张家" ,10);  
  35.             p3.speak();  
  36.       }  
  37. }  
  38. person run
    baby:1
    家仪:0
    张家:10

this:调用的就是所在函数所属对象的引用 所在函数就是比如构造函数Person(String name){this.name=name} 所在对象就是Person p1=new Person("哈哈");

this在那个函数,那个函数属于那个对象 就是this的原理

 this也可以调用其他函数

person(string name){

this.name=name;

}

Person(String name,int age){

this(name);//要放在第一行

this.age=age;

}

static:静态修饰后 不需要创建对象直接输出可以打印

比如:class Person{

String name;

static String guoji="CN";

public void show(){

sop(guoji+":"+name);

}

class abc{

主函数{

sop(Person.guoji);

}

}

}

静态变量 可以对变量进行调用 类名也可以调用

静态方法只能访问静态成员(变量和函数),比如如下代码:

class Person{

String name;

static String country ="CN";

}

public static void show(){

sop(name=":"+country);//报错了 因为有非静态

}

class StaticDemo{

主函数{

Person.show();

}

静态中不能this和super关键字方法 记住哦主函数是静态的

静态什么时候:只能修饰成员(附属修饰函数这就是什么时候用)比如我变量有特有数据是相同的,函数要不要修饰就看一点,是否访问到这个特有的对象

静态代码块随着类的执行而执行,用于初始化(比如我有很多静态成员我需要一个计算 在static{}里执行后直接可以用了)

比如class StaticDemo{

static{

}

class xx{主函数}

{构造函数代码块 能所有的对象初始化} 比如我下面有个构造函数 输出娃娃 在构造代码块里放入那个函数就所以娃娃了

设计模式就是解决问题的方法,单例设计:一个类在内存里的对象唯一性

必须对多个程序使用同一个配置信息时,就必须对该对象保证唯一性

如何保证唯一性:

1.私有化该类的构造函数

2.通过new在本类中创建一个本类对象

3.定义一个公有的方法,将创建的对象返回

javase支持单继承就是class A{} classB{}class C extends classA()  但是不支持多继承就是classC extends classA,B

java里支持多继承 C继承B B继承A

原文地址:https://www.cnblogs.com/hello-web/p/8254279.html