JAVa学习

JAVA学习笔记

API的使用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。
创建对象
使用关键字 new 来创建一个新的对象
方法的定义
public static void show(){方法体 }
方法调用
show();在这里插入代码片
String类构造方法
在这里插入图片描述
在这里插入图片描述

public class StringDemo01 {
    public static void main(String [] args){
        //public String();创建一个空白字符串对象,不含任何内容
        String s1 = new String();
        System.out.println("s1:" + s1);

        //public String (char[] chs);
        char[] chs = {'a', 'b', 'c'};
        String s2 = new String(chs);
        System.out.println("s2:" + s2);

        //public String(byte[] bys);
        byte[] bys = {97, 98, 99};
        String s3 = new String(bys);
        System.out.println("s3:" + s3);

        //String="abc";
        String s4 = "abc";
        System.out.println("s4:" + s4);
    }
}

封装

private
在这里插入图片描述
在这里插入图片描述

定义成员变量: private 类型 变量名;
提供setXxx()/getXxx()方法: ## 标题
> public void setAge(int a){方法体; };pulic int getAge(){ return age;};**

public class Studentha {
    //成员变量
    private String name;
    //int age;
    private int age;

    //提供get/set方法
  //  public void setAge(int a){
    //    age = a;

   // }
    public void setAge(int age){
        this.age = age;
    }
    public int getAge(){
        return age;
    }
 //   public void setName(String n){
  //      name = n;
   // }
    public void setName(String name){
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void show(){System.out.println(name + "," + age);
    }
}

public class StudentDemoha {

public static void main(String[] args) {
    //创建对象
    Student s = new Student();

    //给成员变量赋值
    //s.name = "胡明轩";
    // s.age = 30;
    //使用set方法给成员赋值
    s.setName("詹姆斯");
    s.setAge(30);
    //调用show方法
    s.show();
    //使用get方法获取成员变量的值
    System.out.println(s.getName() + "---" + s.getAge());
}

}

构造方法

每个类都有构造方法,构造方法的名称必须与类同名,一个类可以有多个构造方法
在这里插入图片描述
在这里插入图片描述

public class Stu {
    private int age;
    private String name;
    //构造方法
//    public Stu(){
//        System.out.println("无参构造方法");
//    }
    public Stu(){};
    public Stu(String name){
        this.name = name;
    }
    public Stu(int age){
        this.age = age;
    }
    public void show() {
        System.out.println(name + "," + age);
    }
    public Stu (String name, int age){
        this.name = name;
        this.age = age;
    }

}
public class StuDemo {
    public static void main(String []  args){
        //创建对象
        Stu s = new Stu();
        s.show();

        Stu s2 = new Stu("胡明轩");
        s2.show();

        Stu s3 = new Stu(20);
        s3.show();

        Stu s4 = new Stu("胡明轩",20);
        s4.show();

    }
}

标准类
在这里插入图片描述

/*
    成员变量
        使用private修饰
    构造方法
        提供一个无参构造方法
     成员方法
        提供每一个成员变量对应的setXxx()/getXxx()方法
        提供一个显示对象信息的show()

 */

public class Stu11 {
    //成员变量
    private  String name;
    public int age;
    //构造方法
    public Stu11(){}
    public Stu11(String name,int age){
        this.name = name;
        this.age = age;
    }
    //成员方法
    public void setName(String name){
        this.name = name;
    }
    public String getName(){
        return name;
    }

    public void setAge(int age){
        this.age = age;
    }

    public int getAge(){
        return age;
    }
    public void show(){
        System.out.println(name + "," + age);
    }
}
/*
    创建对象并为其成员变量赋值的两种方法
        1、无参构造方法创建对象后使用setXxx()赋值
        2、使用带参数构造方法直接创建带有属性值的对象
 */
public class Stu11Demo {
    public static void main(String [] args){
        //无参构造方法创建对象后使用setXxx()赋值
        Stu11 s = new Stu11();
        s.setName("胡明轩");
        s.setAge(20);
        s.show();

        //使用带参数构造方法直接创建带有属性值的对象
        Stu11 s2 = new Stu11("胡明轩",20);
        s2.show();
    }


}

构造方法和成员方法的区别

1.构造方法

 构造方法作用概述

       给对象的数据进行初始化

 构造方法格式

       方法名与类名相同

       没有返回值类型,连void都没有

       没有具体的返回值

 构造方法注意事项

       如果你不提供构造方法,系统会给出默认构造方法

       如果你提供了构造方法,系统将不再提供

       构造方法也是可以重载的

注意:定义类的时候,建议自己添加无参的构造方法。

2.成员方法

 成员方法作用概述

       表示对象所具有的功能(和行为)。

 成员方法格式

       有返回类型,可以为void类型,也可以是基本数据类型或引用类型。

       成员方法名可以和类名相同,也可以不同。

3.构造方法和成员方法的区别

 A:格式区别
       构造方法和类名相同,并且没有返回类型,也没有返回值。
       普通成员方法可以任意起名,必须有返回类型,可以没有返回值。
 B:作用区别
        构造方法用于创建对象,并进行初始化值。
        普通成员方法是用于完成特定功能的。

 C:调用区别
        构造方法是在创建对象时被调用的,一个对象建立,只调用一次相应构造函数
        普通成员方法是由创建好的对象调用,可以调用多次

继承

super 关键字的用法和this用法相似
this:代表本类对象的引用
super:代表父类对象的引用

继承格式
public class 子类名 extends 父类名 { }

//例子
//测试类
public class demo {
    public demo() {
    }
    public static void main(String[] args) {
        Zi z = new Zi();
        z.show();
    }
}
public class Fu {
    public int age = 18;
    public Fu() {
    }
}
public class Zi extends Fu {
    public int heigth = 180;
    public int age = 20;
    
    public Zi() {
    }
    public void show() {
        int age = 30;
        System.out.println(age);
        System.out.println(this.age);
        System.out.println(this.heigth);
        System.out.println(super.age);//父类的对象
    }
}
//输出30 20 180 18

继承中构造方法的访问特点
子中的构造方法都会默认先访问父中的无参构造方法

public class Demo {
    public static void main(String[] args){
    //创建对象
        Zi3 z = new Zi3();
        Zi3 z2 = new Zi3(20);
    }
}
public class Fui {
    public Fui(){
        System.out.println("F中无参数构造方法被调用");
    }
    public Fui(int age){
        System.out.println("Fu中带参数方法被调用");
    }
}
public class Zi3 extends Fui{
    public Zi3(){
//        super();
//        super(20);//super(20)访问父中的带参构造方法
        System.out.println("Zi中无参数方法被调用");
    }
    public Zi3(int age){
//        super();
//        super(20);//super(20)访问父中的带参构造方法
        System.out.println("Zi中带参数方法内调用");
    }
}

继承中成员方法的访问特点
通过子类对象访问一个方法
子类成员范围找->父类成员范围中找

public class Demo {
    public static void main(String[] args){
        //创建对象,调用方法
        Zi_5 z = new Zi_5();
        z.method();
        z.show();
    }
}
public class Fu_5 {
    public void show(){
        System.out.println("Fu中的方法被调用");
    }
}
public class Zi_5 extends Fu_5{
    public void method(){
        System.out.println("Zi中method方法被调用");
    }
    public void show(){
        super.show();//访问父类
        System.out.println("Zi中的方法被调用");
    }
}
//输出三个
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值