JAVA基础课总结九

原创 2015年11月18日 23:34:49


本节重点介绍了内部类,是本人根据学习资料总结所得!


一、包                                                                       

A包其实就是文件夹。用于将字节码(.class)进行分类存放 

B格式:

package 包名1.包名2...;

      多级包用.分开即可

C定义包的注意事项

a:package语句必须是程序的第一条可执行的代码

b:package语句在一个java文件中只能有一个

c:如果没有package,默认表示无包名

 

 

 

    D带包的编译和运行

A:手动建包

1:javac命令编译生成class文件。

2:手动创建包(文件夹)

3:class文件扔到文件夹中。

4:java命令执行

类一定要用全路径名称。

带着包使用。

java com.PackageDemo

E自动建包

编译的时候,让它自动建包。

 

javac -d . PackageDemo.java

 

-d 后面表示在当前目录建立包。

二、导包

A编译报错解决方案:

问题1:找不到Demo类。

解决方案:用全路径名称。

 

问题2:程序包cn.itcast不存在。

解决方案:先编译Demo类,在编译Test类。

 

问题3Demo类无法被访问到。

解决方案:对类用public进行修饰。

B一般来说,用一个类,需要用该类的全路径名称。

   如果多个地方使用,就比较麻烦,所以java提供了导包操作。

C格式:

import 包名1.包名2...类名;

     虽然可以最后写*,但是不建议。

D packageimportclass的顺序

package -- import -- class

 

三、四种权限修饰符

本类同包(无关类或者子类)不同包(子类)不同包(无关类)

privateY

默认Y       Y

protectedY      Y    Y

publicY       Y    Y           Y

 

简单概括:

private是给本类使用的

默认修饰符 是给同一个包下所有的类使用的

protected 是给子类使用的 不管子类在不在同一个包,也是给同一个包下所有的类使用的

public 是给任何一个所有人使用的

推荐:

成员变量private

构造方法public

成员方法public

 

一、不同修饰符修饰的内容

 

修饰符:

权限修饰符:private,默认的,protectedpublic

状态修饰符:staticfinal

    抽象修饰符:abstract

    

            类 成员变量  成员方法   构造方法

private    Y     Y       Y

默认Y    Y     Y        Y

protected    Y     Y       Y

publicY    Y         Y       Y

abstract    Y            Y

static    Y      Y

finalY    Y      Y

 

注意,常见规则如下:

以后,所有的类都用public修饰。并且,在一个java文件中,只写一个类。

 

以后,所有的成员变量用private修饰。

 

以后,所有的成员方法用public修饰。

如果是抽象类或者接口:

public abstract + ...

 

以后,所有的构造方法用public修饰。

如果类是工具类或者单例类:

构造用private修饰

 

五、内部类

A把类定义在一个类的内部。

B访问特点:

a:内部类可以直接访问外部类成员,包括私有

注:内部类之所以能访问外部类的成员,是因为它能获取到外部类的引用,如:Outer.this.调用外部类方法

b:外部类要想访问内部类成员,必须创建对象。

 

    C内部类分类:

a:成员位置

          1、内部类修饰符

private 安全隐藏内部类  提供公共的访问方法 

      注:私有成员内部类需在外部类里创建内部类对象提供公共访问方法

          

static  方便调用

           2、如果成员内部类里有静态内容,则成员内部类必须定义为静态

         3、外部访问非静态成员内部类  

             外部类名.内部类名 变量 外部类对象.内部类对象;

  4、外部访问静态成员内部类   

 外部类名.内部类名 变量 外部类.内部类();

 

       b:局部位置

1、定义在方法中。

         2、局部内部类只在局部调用

          3、可以访问外部类成员变量,需要在局部内部类内创建方法调用

  3、局部内部类访问局部变量必须用final修饰

      4、局部内部类在访问他所在方法中的局部变量必须用final修饰,为什么?

因为当调用这个方法时,局部变量如果没有用final修饰,他的生命周期和方法的生命周期是一样的,当方法弹栈,这个局部变量也会消失,那么如果局部内部类对象还没有马上消失想用这个局部变量,就没有了,如果用final修饰会在类加载的时候进入常量池,即使方法弹栈,常量池的常量还在,也可以继续使用

 

 

D内部类字节码文件命名规则

成员内部类:外部类$内部类

有多个成员内部类的 会多个  外部类$1

局部内部类:外部类$1内部类

六、匿名内部类

A:是定义在局部位置的没有名字的内部类。

B:前提

存在一个类,抽象类或者接口,有方法重写

C:格式

new 类或者接口名()

{

重写方法;

}

 

本质理解:其实这是一个继承类或者实现接口的匿名的子类对象。

D:使用

           1、可以直接调方法

           2、可以赋值给父类或者接口的引用

3、当你看到方法的形式参数是接口或者抽象类的时候。

    用匿名内部类改进。

 

          注:匿名内部类不能向下转型,子类特有的方法调用不了

 

之前内容的总结:

A基本数据当形参,给的是值

  引用数据类型当形参,给的是地址值,指向的是该类的对象

B匿名对象调用方法:适合一次调用,调用多次产生多个对象

  匿名对象调属性:可以调用,但是没意义,调用之后变成了垃圾

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

JAVA基础课总结八

 一、多态    A:对象在不同时刻表现出来的不同的状态      B:多态前提  a:要有继承关系。 b:要有方法重写。 c:要有父类引用指向子类对象。    在多态的...

08/25号JAVA基础课学习总结

学习报告 1. 程序设计方面基础知识: Ø  程序:可以被计算机连续执行的指令集合。 Ø  软件:为了实现某些特定的功能,编制成的一个到多个的程序文件的集合。 Ø  计算机语言:可以与计算机进...

java面向对象基础课(继承,方法重写),图形界面=0912号

学习报告 1、什么是重写?用什么方法可以强制检测当前方法是否重写父类方法? 解答: l  重写发生在父类与子类之间,子类的方法名和父类相同,参数列相同,返回类型也相同。当对子类对象进行方法调用时...

Java基础课时1

Java 编程语言是个简单、完全面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的编程语言,Java可以撰写跨平台应用软件。 1.环境搭建 首先查看自己系统...

Java基础课——File类的使用

Java基础课——File类的使用项目里需要用到File类,趁此复习了一下File的基本用法:创建、删除、复制、重命名······· 总的来说,File类既可以看做目标,也可以看做是一个文件,具体参...

java基础课时2--项目的导入和导出

1.导出项目 eclipse中点击自己的工程,右击选择Export 点击下一步 都不要改,只需要设置导出的目录即可。 2.导入项目 工作面板中右击 点击下一步 选择目录点击下一...

JAVA语言基础课后小结

分隔符,标识符以及关键字 (1)分隔符 包括  逗号、分号(语句结束标志)、花括号、空格、圆点。 public class TestSeparated{           int a,b; ...

java基础课件

Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。 Java 2集合框架图 集合接口:6个接口(短虚线表示),表示不同集...

Java基础课件

  • 2015-08-12 21:35
  • 7.54MB
  • 下载

java基础课件 ppt

  • 2012-12-04 11:27
  • 42.18MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)