今天在网上做了一份java笔试题
里面有好几道类型一样的基础题,虽然很基础,但是我还是很懵逼
如题:
写出java MyJava dffe dfe fke 运行的结果,大致意思就是判断s,s1,s2的值
public class MyJava{
public static void main(String[] args) {
String s = args[0];
String s1 = args[1];
String s2 = args[2];
String s3 = args[3];
System.out.println("s="+s+",s1="+s1+",s2="+s2+",s3="+s3);
}
}
做题的时候真么反应过来,原来命令行运行时,可以给main函数的String[] args数组传值
如图
主函数的定义:
public:代表着该函数访问权限是最大的
static:代表主函数随着类的加载就已经存在了
void:主函数没有具体地返回值
main:不是关键字,但是是一个特殊的单词,可以被jvm识别
(String[] args):函数的参数,参数类型是一个数组,该数组中的元素是字符串
主函数是固定格式的:jvm识别
自己在网上也查了资料,发现一篇不错的文章,分享给大家,里面对上述问题解释的很详细http://blog.sina.com.cn/s/blog_7a901a870100umvx.html
java自定义异常练习
/*
自定义异常练习
定义两个图形类,描述长方形和圆
两个类中可以计算图形面积,如果面积是负值,则抛出异常,终止程序
*/
//自定义异常类
class NoValueException extends RuntimeException{
NoValueException(String message){
super(message);
}
}
//面积接口
interface Area{
public void getArea();
}
//长方形
class Rec implements Area {
private int len;
private int wid;
Rec(int len,int wid){
//判断长或宽是否小于零
if(len<0||wid<0)
//小于零,抛出异常
throw new NoValueException("长宽数据异常.....程序终止..");
this.len = len;
this.wid = wid;
}
//计算并打印面积
public void getArea(){
System.out.println(len*wid);
}
}
//圆
class Circle implements Area{
private int radius;
//定义圆周率全局变量
public static final double PI = 3.14;
Circle(int radius){
if(radius<0)
throw new NoValueException("半径数据异常....程序终止...");
this.radius = radius;
}
//计算并打印面积
public void getArea(){
System.out.println(radius*radius*PI);
}
}
public class ExceptionPractice{
public static void main(String[] args){
//测试数据,可以自定义测试多种情况
Rec rec = new Rec(3,4);
rec.getArea();
Circle cir = new Circle(3);
cir.getArea();
}
}
三种测试结果