课上, 老师出了一个题:

考察: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. Android填坑系列:Android JSONObject 中对key-value为null的特殊处理

    在与服务端通过JSON格式进行交互过程中,不同版本的JSON库在对于key-value为null情况上的处理不同. Android自带的org.json对key-value都要求不能为null,对于必 ...

  2. cnodejs社区论坛5--话题详情

  3. WinForm 窗体应用程序 (初步)之二

    现在,我们来了解一些基本控件.控件是放置在工具箱里的,你可以在界面的左侧或者通过菜单栏的视图选项找到它. (1)Label 控件 这是一个用于放置文字的控件,因为你不能在窗体上直接输入文字. (2)T ...

  4. 静态代码审查工具FxCop插件开发(c#)

    FxCop是一款微软官方提供的.net平台代码审查工具,目的是检查我们编写的程序集的代码是否符合规范.FxCop默认提供的是微软默认的审查规则,而且该规则符合<Framework DesignG ...

  5. 13个风格独特的关于页面(About Pages)设计

    如何向其他人呈现你自己和你的作品呢?关于页面的设计是非常重要的,以让你的观众更多地了解你,你的工作和你的想法.这是一个很好的方式来获得更加个性化的展示效果. 设计一个漂亮的关于页面是具有挑战性的.出于 ...

  6. js判断radiobuttonlist的选中值显示/隐藏其它模块

    <script> $(function () { var SelectVal = $("input[name='rblGJS']:checked").val(); if ...

  7. Activity与Service进行数据交互

    Android启动Service有两种方法,一种是startService,一种是bindService.生命周期如下: 执行startService时,调用者如果没有stopService,Serv ...

  8. 检测Xcode是否有问题

    之前的XCode中毒事件闹得沸沸扬扬,在网上找到检测XCode完整性的方式,有需要的小伙伴试试吧.忘记哪里转的了,愧对原创者 在终端输入 spctl 命令,并带上安装的 Xcode 的路径: spct ...

  9. IOS整体项目层级构建

    在创建IOS项目时,若有一个比较明确的层级架构,将对于今后代码的维护或者功能的扩展很有帮助:本文将通过一个实例来展现我对于层级的一些观点:里面有一些零碎的知识点可能无法全部介绍,到时提供源代码进行下载 ...

  10. 【代码笔记】iOS-给背景图赋值颜色

    代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // ...