课上, 老师出了一个题:

考察: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. 修改thinkphp路由模式,去掉Home

    第一步:入口文件增加 define('BIND_MODULE', 'Home'); 第二步:修改config文件,我这里路由模式设置为2 效果展示:

  2. Django messages框架

    一.简介 在网页应用中,你经常需要在处理完表单或其它类型的用户输入后,显示一个通知消息(也叫做“flash message”)给用户 对于这个功能,Django 提供基于Cookie 和会话的消息,无 ...

  3. hibernate(四)__由表逆向创建Domain对象和对象关系映射文件

    之前我们是手写Domain对象和对象关系映射文件->然后生成数据库中的Table. 现在我们反过来先在数据库中建好Table->然后用工具生成Domain对象和对象关系映射文件. 步骤: ...

  4. OData – the best way to REST–实例讲解ASP.NET WebAPI OData (V4) Service & Client

    一.概念介绍 1.1,什么是OData? 还是看OData官网的简单说明: An open protocol to allow the creation and consumption of quer ...

  5. Guacamole之配置Guacamole(五)

    摘要 在网上看到一篇Guacamole官方手册的翻译,但是找不到后续,于是想自己也翻译几篇,有时间的话,会尽量多翻译一些. 原文地址:http://guacamole.incubator.apache ...

  6. CSS3中DIV水平垂直居中-2(3)

    用到CSS3中display的新属性. HTML <div class="parent"> </div> CSS html,body{ width: 100 ...

  7. Mysql一些复杂的语句

    1.查找重复的行 SELECT * FROM blog_user_relation a WHERE (a.account_instance_id,a.follow_account_instance_i ...

  8. Web安全攻防-----TCP/IP安全篇

    知识点: 掌握TCP/IP的体系分层结构 掌握TCP/IP的各一层功能特点 掌握TCP/IP的数据在各层的名称 掌握TCP/IP的体系数据的封装和解封装 1.TCP/IP协议的历史 TCP/IP的起源 ...

  9. SharePoint 2013 通过HttpModule 管理视图权限

    HttpModule工作原理 HttpModule负责监听HttpRequest,当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任 ...

  10. iOS开源项目MobileProject功能点介绍

    一:MobileProject简介 MobileProject项目是一个以MVC模式搭建的开源功能集合,基于Objective-C上面进行编写,意在解决新项目对于常见功能模块的重复开发,MobileP ...