
爱学习的群友问了一道题,靠着我刚过英语四级的水平,翻译一下就是:下列哪个关键词是定义java类所必要的,答案显而易见是class,因为“类”这个名词就是由“class”翻译过来的。
然后我花了几分钟想了想“类”是什么(顺便查查)1、往复杂了想,“类”是“自定义复合数据类型”。整合已有的八种基本数据类型(int,String,double等)构造模块以实现某些功能,定义较为宽泛。
2、往简单了想,“类”是“描述事物性质的工具”。相比上面更容易理解,我们定义一个动物类,一般都会赋给这个小家伙几个变量,简单说一下它多重、多高、名字叫什么等,然后用方法来实现一些行为,比如奔跑,跳跃,握手(虽然我目前只能做到输出文字,全靠想象了属于是)
不知道你有没有发现,早在刚接触编程的时候,“类”就在我们头上挂着。
随后的步骤大多都是先写主函数,然后写下功能性代码。在面向对象思维里面,“类”可以没有主函数,但是没有主函数不方便运行,所以这些“类”就换了一种方式发光发热——调用。
没错,调用可以说是java类最大的用途之一,不仅能其他类的代码量大幅减少,还能让整体排版更简洁美观。所以课程里会让你锻炼类之间互相调用的能力(虽然感觉是画蛇添足),咳咳,面对大量代码的时候,调用确实起到了不可忽视的作用,未雨绸缪也是好事。
下面讲一下关于对象数组的事好,上群友!
从这个代码我们能推断出很多事情,比如在这个test类外,还有一个point类。point有两个构造器,一个有参一个无参。count起到计数作用,应该在两个构造器里有count++。
大体背景分析完了,接下来是群友的问题,想在14行创建20个随机的point类。用到了对象数组,就不提对象数组的4种初始化方法。有兴趣可以查查,这里只介绍动态初始化方法,以免信息量太大,丢失学习的热情。
Point p[]= new Point[20];//创建数组
for(int i=0;i<20;i++)
p[i] = new Point();//定义对象
由于for循环后面就一步,所以大括号可以不加。可以看到,创建数组和定义对象是分开的,回想一下之前定义数组的方法,是不是也有相似之处?
然后就是传输随机数了,只需要在上面代码里添加两行,就可以实现这个功能了
Point p[]= new Point[20];
for(int i=0;i<20;i++)
double a=Math.random()*10;
double b=Math.random()*10;
p[i] = new Point();
但是呢,现在出现了个问题,程序不能运行了。很显然,for循环的范围不够。这就说明大家不要随便省略步骤,如果写的代码多了,查起来很费事的。
Point p[]= new Point[20];
for(int i=0;i<20;i++)
{
double a = Math.random()*10;
double b = Math.random()*10;
p[i] = new Point(a,b);
}
特地单独把大括号列出来,请大家一定一定要注意细节。到这里,问题算是收尾结束了。
最后是我的知识盲区群友问 neatbeans(也可能是netbeans)的默认保存按钮能不能关闭,我查了一下,网上并没有类似的教程,可能没办法关掉?有没有大佬评论区里解决一下,求求了
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)