Java基础之 学java从宝宝的命令行做起

JAVA学习笔记

JAVA命令行

在当前文件的命令行下

  1. 编译:输入命令javac GetGreeting.java
  2. 执行 命令 Java GetGreeting

    有package包的程序
    1.到文件当前目录 输入命令 javac GetGreeting.java
    在c:/temp/bin/client 目录中生成 GetGreeting.class文件
    2.退一层目录 运行java 文件名.GetGreeting
    执行 java client.GetGreeting

    用命令行调用jar文件(无package)
    1.先编译生成文件
    将GetGreeting.java删除,用jar -cvf test.jar .命令打包成jar文件
  3. 输入 jar -xvf test.jar 将文件夹解压
  4. 修改jar文件中的META-INF/MANIFEST.MF文件
    在最后加一行 Main-Class: GetGreeting(注意:冒号和GetGreeting间有一空格,否则报错-Invalid or corrupt jarfile C:/temp/bin/test.jar),然后回车,否则也报错-Failed to load Main-Class manifest attribute from
    C:/temp/bin/test.jar

自定义输入

使用Scannner工具类来获取用户输入的成绩信息. \
Scanner类位于java.util包中,使用时需要导入此包
步骤:

1  
2 1. 导入java.util.Scanner.
3 `import javaj.util.Scanner`
4 2. 创建Scanner对象
5 `Scanner input =new Scanner(System.in)`
6 3. 接收并保存用户输入的值 
7 `int Score =inpput.nextInt();   //这就是获取用户的输入`

使用 Arrays 类操作 Java 中的数组

 1 Arrays 类是 Java 中提供的一个工具类,在 java.util 包中。该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序、搜索等(关于类和方法的相关内容在后面的章节中会详细讲解滴~~)。
 2 Arrays 中常用的方法:
 3 1.  排序
 4 语法:  Arrays.sort(数组名);
 5 2.  将数组转换为字符串
 6 语法:  Arrays.toString(数组名);
 7 ##使用 foreach 操作数组
 8 foreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组、集合时,
 9  foreach 更简单便捷。从英文字面意思理解 foreach 也就是“ for 每一个”的意思,那么到底怎么使用 foreach 语句呢?
10 语法:
11 <img alt="" src="index_files/0.862410223521684.png" style="max-width: 400px; clear: both; height: 92px; width: 330px;">
12 我们分别使用 for 和 foreach 语句来遍历数组
13     // 使用foreach遍历输出数组中的元素
14 for (int sroce :scores        ) 
15 { System.out.println(score);    }

什么是 Java 中的内部类

1. 什么是内部类呢?
内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。
那为什么要将一个类定义在另一个类里面呢?清清爽爽的独立的一个类多好啊!!
2. 内部类的主要作用如下:
 3. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类
内部类的方法可以直接访问外部类的所有数据,包括私有的数据
内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便
内部类有几种呢?
内部类可分为以下几种:
- 成员内部类
- 静态内部类
- 方法内部类
- 匿名内部类

 

 
 

Java 中的成员内部类

内部类中最常见的就是成员内部类,也称为普通内部类。我们来看如下代码:

 

从上面的代码中我们可以看到,成员内部类的使用方法:
1、 Inner 类定义在 Outer 类的内部,相当于 Outer 类的一个成员变量的位置,Inner 类可以使用任意访问控制符,如 public 、 protected 、 private 等
2、 Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a
3、 定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );
4、 编译上面的程序后,会发现产生了两个 .class 文件

其中,第二个是外部类的 .class 文件,第一个是内部类的 .class 文件,即成员内部类的 .class 文件总是这样:外部类名$内部类名.class
另外,友情提示哦:
1、 外部类是不能直接使用内部类的成员和方法滴

 


可先创建内部类的对象,然后通过内部类的对象来访问其成员变量和方法。
2、 如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字。如:

 



类的继承和调用

···
1. 在初始化的时候 子类可以重写父类的函数 调用的时候是优先调用子类的函数
2. 在继承的时候:
- 先初始化父类再初始化子类(先父类构造函数)
- 先执行初始化对象中的属性,再执行构造方法中的初始化

···

posted @ 2017-08-31 10:31  Clay-  阅读(1275)  评论(0编辑  收藏  举报