JAVA 面向对象----类、构造器

面向对象

分类的思想模式;以的方式组织代码,以对象的组织封装数。

三大特性

封装:吧数据封装起来,对外提供一个小口,来访问

继承:A类继承B类便会拥有B类的所有特性。

多态:接口的多种不同的实现方式即为多态;

静态方法与非静态方法

这里用两个不同的class写

静态

package oop;
​
public class student {
    //静态方法
    public static void say () {
        //静态方法
        System.out.println("静态方法测试");
​
    }
}
​
//---------------------------------------------------
​
package oop;
​
public class demo01 {
    public static void main(String[] args) {
        student.say();
    }
}
​

非静态

package oop;
​
public class student {
    //静态方法
    public void say () {
        //静态方法
        System.out.println("动态方法测试");
​
    }
}
​
​
//----------------------------------------------------
package oop;
​
public class demo01 {
    public static void main(String[] args) {
        //调用的时候需要实例化这个类
        //对象类型 对象名=对象值
        student s1=new student();
        s1.say();
    }
}

 

类与对象的创建

  1. 类:是一种抽象的数据类型,他是对于某一类事物整体描述(植物、动物、手机......)

  2. 对象:抽象概念的具体实例。(张三、李四......)

    package demo02;
    //学生类
    public class Student {
            //属性:字段
            String name;
            int age;
    ​
            //方法
            public void student(){
                System.out.println(this.name+"学生在学习");
            }
    }
    ​
    //------------------------------------------------------
    ​
    package demo02;
    //一个项目中只有一个main方法
    public class Application {
        public static void main(String[] args) {
            //类:抽象的,需要实例化
            //类实例化后会返回一个自己的对象
            //xiaoming对象就是一个Student类的具体实例
            Student xiaoming=new Student();
            Student xiaohong=new Student();
            xiaoming.name="小明";
            xiaohong.name="小虹";
            System.out.println(xiaoming.name);
            System.out.println(xiaohong.name);
        }
    }
    ​

构造器详解

package demo02;
​
public class Person {
    //一个类即使什么也不写,他也会存在一个方法
    //显示的定义构造器,如下所示:
    public Person(){
    }
}

构造器作用

使用new关键字,本质是在调用构造器

构造器一般是在初始化值

例:无参构造

package demo02;
​
public class Person {
    String name;
    public Person(){
        this.name="lh";
    }
}
​
//---------------------------------------------------------
​
​
package demo02;
//一个项目中只有一个main方法
public class Application {
    public static void main(String[] args) {
        Person person=new Person();
        System.out.println(person.name);
   }
}
​

例:有参构造

有参构造时,把无参构造的方法里面空上。

package demo02;
​
public class Person {
    String name;
​
    //无参构造
    public Person(){
    }
​
    //有参构造
    public Person(String name){
        this.name=name;
    }
}
//---------------------------------------------------------
​
package demo02;
//一个项目中只有一个main方法
public class Application {
    public static void main(String[] args) {
        //下面会调用student类里面的有参构造方法;如果删掉无参构造的构造器,会报错
        Person person=new Person("lh");
        System.out.println(person.name);
   }
}
​

构造器的快速生成

快捷键:alt+insert

package demo02;
​
public class Person {
    String name;
    int age;
​
    public Person(int age) {
        this.age = age;
    }
​
    public Person(String name) {
        this.name = name;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值