Java进阶总结1

Java进阶总结1

1.面向对象的三大特征

 //自定义一个类

 /**

 语法:

[修饰符] class 类名{

//成员变量  属性

 

//成员方法  行为

}

 */

 public class Student{

 //属性 字段 成员变量

 int stuid;//学号

 String name;//姓名

 //方法

 public void study(){

 System.out.println("好好学习,天天向上!");

 }

 //入口方法

 public static void main(String[]args){

 //通过类创建对象 语法:类名 对象名=new 类名();

 Student stu=new Student();

 //给对象的属性赋值 对象名.属性=value;

 stu.stuid=151301;//给学号赋值

 stu.name="浪子一秋";//给姓名赋值

 //取对象属性的值 对象名.属性

 System.out.println("学号:"+stu.stuid);

 System.out.println("姓名:"+stu.name);

 //调用对象的方法 对象名.方法名();

 stu.study();

 //创建第二个对象

 Student stu1=new Student();

 //给属性赋值

 stu1.stuid=151302;

 stu1.name="葬剑灬尊";

 //取stu1对象属性的值 对象名.属性

 System.out.println("学号:"+stu1.stuid);

 System.out.println("姓名:"+stu1.name);

 //调用学习方法

 stu1.study();

 //stu1的地址赋值给stu

 stu=stu1;

 System.out.println("学号:"+stu.stuid);

 System.out.println("姓名:"+stu.name);

 //stu1指向null

 stu1=null;

 //调用属性或者方法

 //stu1.name="一叶知秋";//抛出空指针异常

 stu1=new Student();//0x121 报废

 stu1=new Student();//0x122 两个对象不相同  

 }

 }

输出结果:

练习题

 public class Student1{

 //创建属性

 String name;

 boolean isFee;

 //创建fees方法

 public static void fees(Student1[]stu,int i){

 System.out.println(stu[i].name+"同学,\t请缴费!\t"+stu[i].isFee);

 //交学费

 stu[i].isFee=true;

 }

 //入口方法

 public static void main(String[]args){

 //实例化对象并给属性赋值

 Student1 jie=new Student1();

 jie.name="浪子一秋";

 jie.isFee=true;

 Student1 qiu=new Student1();

 qiu.name="一叶知秋";

 qiu.isFee=false;

 Student1 zun=new Student1();

 zun.name="葬剑灬尊";

 zun.isFee=true;

 Student1 tian=new Student1();

 tian.name="吠舞罗";

 tian.isFee=true;

 Student1 qq=new Student1();

 qq.name="墨竹";

 qq.isFee=false;

 //声明一个数组,将对象存入数组中

 Student1[]stu={jie,qiu,zun,tian,qq};

 for(int i=0;i<stu.length;i++){

 //判断isFee的状态

 if(stu[i].isFee==false){

 fees(stu,i);

 }else{

 System.out.println(stu[i].name+"同学,\t已缴费!\t"+stu[i].isFee);

 }

 }

 //交费后

 System.out.println("----------交费后-----------");

 for(Student1 tmp:stu){

 System.out.println(tmp.name+"同学,\t已缴费!\t"+tmp.isFee);

 }

 }

 }

输出结果:

2.构造器

 public class School{

 /**

 1.构造器的名称和当前所在类的名称相同.

 2.禁止定义返回类型,千万不要使用void作为返回类型.

void  Student(){}这是普通方法.

假设需要写返回类型,也应该这样写:Student   Student();

 3.构造器中,不需要使用return语句.

其实构造器是有返回值的,返回的是当前创建对象的引用.

 */

 /**

 默认构造器的特点

1.符合构造器的特点

2.不能有参数

3.无方法体 例如:public School()//不能写出来

4.某一个类,至少存在一个构造器

5.如果类A没有使用public修饰,则编译器创建的构造器也没有public修饰.

如果使用了public修饰,则编译器创建的构造器也使用public修饰.

 */

 //构造方法重载

 public School(){

 System.out.println("默认构造方法");  

 }

 public School(String name1){

 name=name1;

 System.out.println(name);

 }

 //属性

 String name;

 //方法

 

 //入口方法

 public static void main(String[]args){

 //实例化对象

 School sch=new School();

 //初始化一个对象调用带参数的方法

 School sch1=new School("葬剑山庄");

 }

 }

输出结果:

3.知识框架

 

猜你喜欢

转载自blog.csdn.net/qq_41534115/article/details/81192673