java中的小知识点

一、main方法解析

    

public static void main(String[]args) {

}

程序一开始执行是从main方法开始的。

Public:为了让虚拟机能调用main方法。

Static:不希望加载main方法的时候产生对象,所以用static方便虚拟机直接调用main方法。

Void:不需要返回类型。

String[] args:有时候运行程序的时候要传入一些参数,所以出现String数组。

 

 二、访问修饰符

public(公共的):被public修饰的属性和方法能够被所有类访问。

Protected(受保护的):被protected修饰的属性和方法可以在类内部、相同包以及该类的子类所访问(可以位于不同的包下,继承)。

Private(私有的):被privatec修饰的属性和方法只能在该类内部使用。

默认的(不加任何访问修饰符):在类内部以及相同包下面的类所访问。


三、局部变量与成员变量

1、局部变量必须初始化,成员变量可以不用初始化。局部变量调用后会自动消失(被垃圾回收机制回收),而成员变量定义了不会。例如:我们在方法里定义一个局部变量,当方法调用完后局部变量自动消失,当再次调用方法时才出现。看下面的一个实例:

package cn.com.test1;

 

public class test {

    int a = 0;

a为成员变量,

    public void result() {

       for (int j = 0; j < 10; j++) {

           System.out.println(a++);

       }

    }

 

    public void result2() {

       for (int i = 0; i < 10; i++) {

           int b = 0;//局部变量,当调用完后自动消失,再次调用时才出现,所以输出结果总是0。

           System.out.println(b++);

       }

    }

 

    public static void main(String[] args) {

       test t = new test();

       t.result();

       System.out.println("-------------");

       t.result2();

    }

 

}

输出结果:a为:0到9

          b为:9个0

 

四、类与对象

瓶子是类,而这个瓶子,那个有标签的瓶子是对象

符合一类事物的特征的具体的某个东西是对象。

 

每个对象都有自己的属性,我们可以根据属性来区分对象,而方法不可以。例如我们区分一只猫可以根据猫的颜色来区分,而不能根据它能不能捉老鼠来区分。

 

对象(类)之间的关系:

关联关系:

继承关系:xx是一种xx

聚合关系:xx是xx的一部分

实现关系:

多态:

等等

 

首先定义类才有对象

 

问题求解方法:

第一步考虑有哪些类和对象

第二步考虑类和对象有哪些属性

第三步考虑类或对象间的关系以及它们的方法

 

 

为什么使用面向对象?

可重用性、可拓展性、维护和替换方便。。。。

五、导入与包

1、         包:用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则为:将公司域名反转作为包名,www.baidu.com,则包名可以表示为:com.baidu,对于包名,每个字母都需要小写。如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认的包里面。

2、         编译带有package声明的java源文件有两种方式:

a)     直接编译,然后根据类中所定义的包名,一一手工建立目录结构,最后将生成的class文件放在该目录结构中(很少使用,比较麻烦)

b)    使用编译参数—d,方式为javac –d.源文件.Java,这样在编译后,编译器会自动帮我们建立好包所对应的目录结构。

3、         有两个包名,分别为:aa.bb.cc和aa.bb.cc.dd,那么我们称后者为前者的子包。

4、         导入(import):将使用package分离的各个类导入回来,让编译器能够找到所需要的类。语法:import javax.swing.*

5、         Importaa.bb.*表示导入aa.bb下面所有的类,并不会导入aa.bb.cc下面的类。

6、         关于package、import、class的顺序问题:

A、       首先需要定义包,可选

B、       接下来是使用import进行导入,可选

C、       然后才是class或者interface的定义

7、如果两个类在同一个包下面,则不需要导入,直接使用。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值