Episode-3 创建一个新的对象!
都说Java是一种面向对象的语言,那我们现在就开始创建一个新的对象吧!
本期学习所需的前置知识
将写好的类加入package中的方法
使用javac,java命令编译和运行的方法
将多个类打包成.jar文件的方法
先来定义下对象的行为!
假如我们要定义一个会跳的对象,我们可以这样写:
public class jump{
public static void main(String[] args){
String input = args[0];
System.out.println("Cai jumped and said: \"" + input + "\".");
}
}
将上述代码保存为jump.java,并在命令行中输入javac jump.java可编译出jump.class文件,此时再输入java jump niganma,即可看到输出:
Cai jumped and said: "niganma".
但我们想创建一个具有多种行为的对象,因此我们可以再定义几个行为:
比如说,唱:
public class sing{
public static void main(String[] args){
String input = args[0];
System.out.println("Cai sang a song and said: \"" + input + "\".");
}
}
比如说,rap:
public class rap{
public static void main(String[] args){
String input = args[0];
System.out.println("Cai rapped and said: \"" + input + "\".");
}
}
再比如说,篮球:
public class basketball{
public static void main(String[] args){
String input = args[0];
System.out.println("Cai played his basketball and said: \"" + input + "\".");
}
}
现在,我们的对象就具有了四种行为:唱,跳,rap,篮球!
把对象打包!
假如我们的对象有多个行为的话,在传输和管理的时候可能会比较困难,所以我们现在要把对象打包!
我们可以使用package语句将对象的行为添加到一个包里。
比如说,原来的jump.java文件,我们想要将它打包到CaiXuKun的包中,那么我们只需要在文件的头部添加package CaiXuKun;语句:
package CaiXuKun;
public class jump{
public static void main(String[] args){
String input = args[0];
System.out.println("Cai jumped and said: \"" + input + "\".");
}
}
其他三个行为对应的.java文件,也做相同的改动。
编译出我们的包
现在,我们可以在命令行中输入如下命令对修改后的.java文件进行编译:
javac -d . *.java
上面的代码将会在当前目录中创建一个名为CaiXuKun的文件夹,文件夹里有四个.class文件,对应着我们所定义的四个行为。
尝试运行我们的对象!
我们可以在命令行中输入以下代码来执行CaiXuKun包内的basketball行为:
java CaiXuKun.basketball jinitaimei
可以看到输出结果:
至此,我们成功运行了CaiXuKun包中的basketball行为!
打包为.jar文件
Java项目还有一种常见的打包方式,即将文件打包为.jar文件。
现在我们可以用下面这段代码把CaiXuKun文件夹打包为.jar文件:
jar cvf CaiXuKun.jar CaiXuKun
我的jar.exe不在环境变量中,所以我指定了jar的路径:
这样一来,当前目录下会多出一个CaiXuKun.jar文件,我们可以把这个文件分享给其他人,让他们也来尝试运行我们创建的对象!
我们可以使用如下命令来使用这个.jar文件:
java -cp CaiXuKun.jar CaiXuKun.rap ikun
于是屏幕中会出现Cai rapped and said: "ikun".字样。