Android 学习第16课,java 包、类等相关的一些基础知识

时间:2023-03-08 16:24:28

1.建议将类放在包中,不要使用无名包

2.建议包名都用小写单词组成,不要用大写

3.建议包名用“域名的倒写.项目名.模块名”的形式,以确保包名的唯一性

注意:类变量与实例变量、类方法与实例方法的区别

在前面加上static 就成了 类变量或类方法。

实例方法可以调用类中的其他方法

但是类方法只能调用 其他类static方法,不能调用 实例方法

类方法只有调用 类变量。

当类加载到内存时,实例方法、实例变量不会被分配内存空间,只有在创建对象之后才会被创建。

面类方法在该类加载到内存时就分配了相应的内存空间。

方法的重载:指的是方法名称相同,但是参数不同,好处是代码的执行,由参数来决定执行哪个方法。

在java 中,每个类至少有一个构造函数,如果类中没有显式声明,Java则自动提供一个隐含的默认的构造函数:

如: public Example(){}

类的主方法,也就是入口点, Eclipse 提供了一个可选项“public static void main(String[] args)” ,就是程序的入口点。即主方法。

主方法是静态的,这意味着在主方法调用 的方法也必须是静态的。

主方法是没有返回值的。

应用程序只有一个主方法。

可以向主方法传递参数,数组

package ch03_TestClass;

public class MainClass {

    public static void main(String[] args) {

        //选择 Eclipse 运行 —》运行配置 -》 x=自变量,在这里输入 system

        if(args[0].equals("system"))
System.out.println("This is System program!");
else
System.out.println("This is Application program"); } }

在Eclipse某个类中,可以用鼠标右键选择 源代码-》从超生类中生成构造函数、从字段中生成构造函数、生成 Getter 和 Setter 。

instanceof

String s = "测试这个字符串是不是String类的实例";
System.out.println(s instanceof String);//判断这个变量s是不是字符串

if(tom instance Person)   //判断某个对象是不是某个类的实例

类的继承(用关键字:extends)

一个类只能继承一个超类(父类),单继承。但是一个类可以被多个子类所继承。

继承的语法:

class SubClassName extends SuperClassName;

     class A
{
int x;
void x(){}
}
class B extends A
{
int x;
void y(){
x();
}
}

类的重载

关键字 super ,表示子类调用父类的方法或变量

嵌套类 及 内部类

abstract 抽象类

语法 : abstract class 类名

接口( interface ),接口是一种特殊形式的抽象类

语法:

interface 接口名
{

  接口体

}

接口的实现,使用关键字:implements,可以实现多个接口,中间用逗号隔开

如果一个类使用了某个接口,则这个类必须实现该接口的所有方法,即为这些方法提供方法体。

----------------------------------------------------------------------------

目前操作中,对这些类的接口,继承,抽象,反射,拆箱与装箱,枚举,泛型,注释   这些内容后续再深入学习。

先跳过,学习第6章,字符串处理

----------------------------------------------------------------------------