课上, 老师出了一个题:

考察:1、类的定义 2、类的属性 3、类的方法、重载、构造方法、代码块

题目是这样的:

设计 一个 类:Tree

要求:

1、包含main方法

2、属性:静态: String name ; double height; double growgrate

3、构造方法: a.从“种子开始长”。b。直接”移植“

4、其他方法  void grow(time)

{ height =           , Sysem.out,println(......);}

我是这样做的:

package classworks;

public class Tree {
             static String name;
             static  double height ;
             static double growgrate =1.1;
             double time;
 static
    {
    height = 0;
    name = "种子";
    System.out.println( "名字:" + name +  ",   高度  " +height + "  " ) ;     

    }

  void  grow(double time) 

    {
        name = "松树";
        height =  time * 1.1 + growgrate;

        System.out.println( "名字:" + name +  ",   高度  " +height + " " ) ;
    }

}

 class Info{

     double height;
     String name;

   public  Info(double height){

     name = "小树";
     this.height = height;

 }
   public Info(String name,double height )
       {
            this.name = name;
            this.height = height;
        } 

   public void showInfo(){
       System.out.println(" 名字: "+name+"  ,高度:   "+height+"   ");
   }
 }

 class main{

    public static void main(String[] args){
     Tree p = new Tree();
      p.grow(12);
       Info q1 = new Info(12);
       q1.showInfo();
       Info q2 = new Info("大树",22);
       q2.showInfo();
    }
 }

之后又修改了下:

package classworks;

import static classworks.Info.height;
import static classworks.Tree.height;

public class Tree {
             static String name;
             static  double height ;
             static double growgrate =1.1;
             double time;
 //其它方法
  void  grow(double time) 

    {
        name = "松树";
        height =  time * 1.1 + growgrate;

        System.out.println( "名字:" + name +  ",   高度  " +height + " " ) ;
    }

}

//构造方法
class seed{
      static double height;
      static String name;

  public  seed(){
    height = 0;
    name = "种子";
    System.out.println( "名字:" + name +  ",   高度  " +height + "  " ) ;     

   }
}

 class Info{

     static  double height;
     static String name;

   public  Info(double height){

     name = "小树";
     this.height = height;

 }

   public Info(String name,double height )
       {
            this.name = name;
            this.height = height;
        } 

   public void showInfo(){
       System.out.println(" 名字: "+name+"  ,高度:   "+height+"   ");
   }
 }

 class main{

    public static void main(String[] args){
        Tree p = new Tree();
         p.grow(12);
       new seed();
        Info q1 = new Info(12);
        q1.showInfo();
        Info q2 = new Info("大树",22);
        q2.showInfo();
    }
 }

总结:

构造方法

构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。

构造方法 - 为何使用构造方法

是一种特殊的方法,它的作用是用来初始化对象的数据,实现类的实例化。 在编写类的成员数据时,就需要编写初始化这些数据的构造方法。

构造方法 - 关键字this

妙用this关键字 什么是this this代表当前对象,其本质是实例方法中对该方法所在实例的引用

this的用处

当引用对象的某个成员时,可以用“this.成员名”来表示 还可以用“this.方法名”来引用当前对象的某个方法 this的另一个用途是:在一个构造方法中调用当前对象的其它构造方法; 注意:这样的语句必须作为构造方法的第一条语句

注意事项

this只能用在方法中; this不能用在静态方法中 Simple use of the "this" 调用一个方法,使得它的返回值为一个句柄!

Java【小考】的更多相关文章

  1. 第一次java小考心得体会

    本周四Java第一次上课,测试了一个ATM程序,从两点半开始到五点半结束. 整整三个小时,结果怎么说呢,大概可以用惨不忍睹来形容吧. 因为之前有一个测试样卷,以为考试内容不会变的我,只是把学生信息管理 ...

  2. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  3. 20145205《Java程序设计》课程总结

    每周读书笔记链接汇总 20145205 <Java程序设计>第1周学习总结 20145205<Java程序设计>第2周学习总结 20145205 <Java程序设计> ...

  4. Java语言程序设计课程学期总结

    2016-2017 第2学期 课程介绍 编程类课程,76学时(44理论+32实验),学期末还有1周的课程设计. 问题与现状 4个班共120人,教师无法逐一检查每个学生的编程实验. 纸质作业质量不高. ...

  5. Java的输入语句以及本周对于文件读写的研究

    日期:2018.9.20 博客期:010 星期四 ##:今天下午要考试 java(小考)!那么,我就应对相应的方法给出策略吧! 首先是 Java 里的输入语句,我一般是用Scanner类,用这个之前要 ...

  6. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  7. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  8. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  9. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

随机推荐

  1. jquery刷新页面

    下面介绍全页面刷新方法:有时候可能会用到 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象(用于框架) opener.loc ...

  2. Java经典实例:使用ChoiceFormat来格式化复数

    import java.text.ChoiceFormat; /** * Created by Frank */ public class FormatPuralsChoice extends For ...

  3. GJM : 安装SqlServer遇到问题的解决方案 [原创]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  4. javascript中关于数组的一些鄙视题

    一.判断一个数组中是否有相同的元素 /* * 判断数组中是否有相同的元素的代码 */ // 方案一 function isRepeat1(arrs) { if(arrs.length > 0) ...

  5. RT-Thread入门和模拟器的配置生成

    RT-Thread是一个国产开源的实时操作系统,支持MCU多,外设丰富.值得学习 下载地址:http://www.rt-thread.org/page/31.html ,解压可以得到一下目录结构:|- ...

  6. button与input[type=”button”]的区别

    button与input[type="button"]的区别 特别感谢 @守护晴天 ,指出了博客中不细致不严谨的地方,也让我学到了更多,更多是觉得抱歉,由于自己的不细致可能误导了一 ...

  7. 好推二维码如何通过应用宝微下载支持微信自动打开APP下载?

    好推二维码 官网 http://www.hotapp.cn 1. 为什么使用应用宝微下载? APP下载二维码,通过微信扫描下载的时候,微信目前只支持应用宝微下载,才能在微信里直接打开下载,否则就需要在 ...

  8. iOS runtime的理解和应用

    项目中经常会有一些的功能模块用到runtime,最近也在学习它.对于要不要阅读runtime的源码,我觉得仅仅是处理正常的开发,那真的没有必要,只要把常用的一些函数看下和原理理解下就可以了. 但是如果 ...

  9. Android 手机卫士--事件传递&响应规则

    问题的提出: 本文地址:http://www.cnblogs.com/wuyudong/p/5911187.html ,转载请注明源地址. 前面的文章实现了点击SettingItemView条目的时候 ...

  10. 优化MySchool数据库(四)

    关于“无法附件数据库”过程的遇到的问题: 1.数据文件本身,具有访问权限的限制 ---- 选中 数据库文件所在的文件夹---->右键菜单(属性)----> 安全 --->User用户 ...