java中数组及java的三大特性之封装

1. 数组的下标从零开始的原因:数组变量拿到的是数组内存的首地址,数组元素的地址是a[i] = 首地址 + i * 字节大小,i即是下标,不需要向下波动, 故下标需要从0开始。

2. 定义数组的三中方法:

        a)  .方式一:

            int[] i = {50, 60, 70};

        b).方式二:

             int[]  i1 = new int[]{50, 60, 70};

        c).方式三:

            int [] i2 = new int[5];

3. 增强for循环:for(元素类型  变量:数组或集合)

例如:for(String s : new String[]{“ab”,”cd”})

  {

     System.out.println(s);

}

4. 冒泡排序:对一组无序的数据进行排列,比较相邻的两个数的大小,如果第一个数比第二个数大,就交换,依次比较直至最后一对,最大数排列在最后面,重复上面操作,找出第二大数,直至找完,即完成了数列的排序。关键代码:       

5. 三大特性之封装:面向用户更简单,面向属性更安全。

6. 封装的特点:

a)  属性私有;

b)  提供set和get方法(一系列的设置和处理);

c)  选择性的定义set和get方法(一个set可以处理多个变量,可以只有set方法,而不用get方法)

d)  一个类的属性是通过getName()和setName()的名字来判断的;

e)  this.name = name; 对象的方法,谁用就是是谁的的对象

f)  一些可以联系的方法尽可能放在一个set方法;

g)  可以进行一些合法性验证处理。

7. 访问控制符:

a)  默认访问符: 访问范围是同一个包,同一个类中(关键字可以省略);

b)  protected 只能子类使用;

c)  public 都可访问。

8. 二维数组:int[][] aa = new int[3][];

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

int[1] = {4, 5, 6};

int[2] = {7, 8, 9};

二维数组的只行的数确定,每一行有的列数可以不用提前给出,然后给每一行一次赋值,前面已经定义了行号,所以后面不用定义。

9. 对象数组:就是指数组里每一个元素都是对象类型的,对象可以通过get和set方法可以给其拥有的属性赋值。例如int[] a = new int[]{new Dog(), new Dog};使用数组下标就可以访问对象数组元素的属性。

10.      带参数运行程序:在命令提示符中运行带参数的java程序,main方法会有一个字符数组接收该参数,然后使用,运行java程序的格式为java Test 参数1 参数2 参数3, 中间有空格隔开,若遇到参数里需要空格,使用双引号将该参数括起来即可,不然dos会默认为两个独立的参数运行,若遇到特殊符号,例如 *,要用引号括起来,不然是表示一个目录结构,打印时打印出当前目录所有的文件夹。

11.      java命令的机制:当使用 java Test时, java虚拟机首先会找到path路径下是否有java.exe,若没有则报错,若有,就执行,找到Test.class 文件再找classpath,没有则默认当前文件夹下找,执行Test.class 文件,如果class文件找到,首先加载class文件,准备外界参数 “a”“b”“c”,进入main方法,执行main方法里的代码,如果没有找到class文件,则抛出ClassnotFoundException异常。

12.      每个类的属性都是private修饰的,只有类自身可以用,通过对象的set和get方法获得属性相应的值,属性还可以有数组类型,例如定义一个颜色类数组,set方法接收一个数组类型的参数,get方法也返回一个数组,只需要通过get和set方法就可以获得该属性,接下来就是对数组的一些操作。

13.      this关键字:只使用在实例方法中,谁用,this就代之是谁

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值