美文网首页
1.数据类型、类、package

1.数据类型、类、package

作者: 芝麻酱的简书 | 来源:发表于2018-12-16 22:27 被阅读5次
数组

1.数组静态初始化:

int[] array = new int[]{1,2,3};

数组静态初始化简写:

int[] array = {1,2,3};

2.数组的动态初始化

int[] array = new int[100];

3.二维数组静态初始化:

    int[][] array = new int[][]{
        {1,2,3},
        {1,2},
        {3}
    } ;

4.二维数组动态初始化:
创建一个数组粒度为3,每个元素都是一个粒度为5的二维数组

        int[][] array = new int[3][5];

→→→→→→→→→→🏮←←←←←←←←←

数组快速遍历方法foreach(编译器语法糖):

        int[][] array = new int[3][5];
        for (int[] item: array) {
            System.out.println(item.length);
        }

→→→→→→→→→→🏮←←←←←←←←←

可变个数形参(编译器语法糖,内部还是数组):

    static void getNew(int ... args){
        System.out.println(args.length);
    }

    //调用
    getNew(1,2,3);
    //或者            
    int[] array =  {1,2,3,4};
    getNew(array);
注意:可变参数必须作为方法的最后一个形参

→→→→→→→→→→🏮←←←←←←←←←
Java内置数组工具类Arrays:

int[] array = {1,2,34};
String result = java.util.Arrays.toString(array);
System.out.println(result);

如果类使用了public修饰符,必须保证当前文件名跟此类名相同

类构造器

构造器用于创建对象,必须跟new一起使用

默认构造器特点:
1.构造器名称和当前所在类名称相同
2.不要定义返回类型
3.不要使用return语句,默认返回当前创建对象的引用
4.无参数
5.无方法体
6.如果当前类有public修饰,则默认构造器方法也有public修饰,反之亦然。

如果我们显式创建了一个构造器,则默认构造器就会失效。

→→→→→→→→→→🏮←←←←←←←←←

package:

1.包名如何定义:

  • 包名必须全部小写
  • 自定义包名不能以java开头,跟系统类库冲突
  • 企业开发中,公司域名倒着写,如果第一个为数字,则可以用_放在首位
    格式:域名倒写,模块名,组件名 比如com._111.network.util
  • 包中的类第一行必须写上package 包名
    类的简单名称为Login,类的全限定名称为com._111.network.util.Login

→→→→→→→→→→🏮←←←←←←←←←

import:

在没有使用import之前,只能使用全限定名来使用别的模块中的内容
使用import 全限定名后,只需要使用类的简单名称即可

import java.util.Arrays;
class Untitled {
    public static void main(String[] args) {
        int[] array = {1,2,3};
        String rest = Arrays.toString(array);
    }
}

如果要引入包下的多个类,可以使用通配符*

import java.util.*;

→→→→→→→→→→🏮←←←←←←←←←

静态导入

把java内置库中的静态方法,像当前类中的静态方法一样使用:
语法import static 静态方法

import static java.util.Arrays.binarySearch;

class Untitled {
    public static void main(String[] args) {
        
        int[] array = {0,1,2,3,4,5};
        
         binarySearch(array, 2);
        
    }
}

同样可以使用通配符*

import static java.util.Arrays.*;

实际开发中,不推荐使用静态导入
→→→→→→→→→→🏮←←←←←←←←←

访问权限控制

1.private:只能在本类中访问,不写缺省
2.protected:表示子类访问权限,同包中可以访问,即使不同包,但是有继承关系也可以访问
3.public:表示全局的,在当前项目任何地方都可以访问

→→→→→→→→→→🏮←←←←←←←←←

JavaBean规范

1.类必须使用public修饰
2.必须保证有公共无参数的构造器
3.包含了属性的操作手段(给属性赋值setName,获取属性值getName

→→→→→→→→→→🏮←←←←←←←←←

this关键字

在构造器中,this指代当前构建的对象
在方法中,哪一个对象调用了this所在的方法,this就指代了哪一个对象

this使用场景:
1.解决成员变量和参数之间的二义性,必须使用
2.同类中实例方法互相调用
3.将当前对象作为参数传递个另一个方法
4.将当前对象作为方法的返回值(链式编程)
5.构造器重载互调,this([参数])必须写在构造方法第一行
6.static不能和this一起使用 // 当字节码被加载进JVM后,static修饰的变量已经存在,但是此时对象还没有创建,没有对象,就没有this

class Untitled {
    
    String name;
    String age;
    
    Untitled(){
        System.out.println("默认构造器");
    }
    
    Untitled(String name){ // 重载构造器,上面默认构造器就不会被调用
        System.out.println("构造器 name");

        this.name = name;
    }
    Untitled(String name, String age){
        this(name); // this语句必须是在构造器的第一行,表示调用上一个构造器,这个可以理解为便利构造器
        this.age = age;
        System.out.println("构造器 name age");
    }
    
    public static void main(String[] args) {
        Untitled user = new Untitled("haha","12");
        }
}

相关文章

网友评论

      本文标题:1.数据类型、类、package

      本文链接:https://www.haomeiwen.com/subject/fbtnhqtx.html