属性和普通方法

一、定义类

上一节讲了很多深奥的理论,那么这节我们就得实践一下,先简单描述一下我们的实体世界:有一个学生小明,那么这个学生就是一个对象,这个对象有哪些属性和方法呢,我们可以先简单抽象一下,属性有(姓名:小明,学号:001,性别:男,年龄:12,体重:23kg),还有就是方法(做作业,上课)等。我们通过对这个学生对象进行分析后就可以抽象一个学生类,下面就可以把现实的实体世界通过计算机的实体来描述了。打开Eclipse,我们可以新建一个Student类。

/**
* 学生类
*
* @author Administrator
*
*/
public class Student {
/** 属性 **/
// 姓名
String name;
// 学号
int number;
// 性别
boolean gender;
// 年龄
int age;
// 体重
double weight;
/** 方法 **/
// 普通方法
// /
// 访问修饰符 返回值类型 方法名称(参数1,参数2,...){
// 方法体
// }
//返回类型为String
public String goschool(String date) {
return "";
}
// 做作业
// void 表示返回空值 空
public void dohomework() {
}
}

在这个类里面我们定义了相关的属性和方法,属性的定义比较简单,和我们以前定义一个变量的格式是一样的。
属性类型 属性名称

方法的定义也不难,具体的格式是

访问修饰符 返回值类型 方法名称(参数1,参数2,...){
方法体
}

访问修饰符我们以后再讲,一个方法基本包括四个部分,返回值、方法名称、参数和方法体,除了参数可以没有之外其他都是必须的,但是就算没有参数,在方法名称后面也要有个小括号()。我们上面的例子使用void作为返回值类型,表示没有返回值,如果是其他的返回值类型,则必须在方法中使用return关键字返回相对于类型的值。

二、通过类构造对象

类的定义就搞定了,下面我们可以通过上面定义的类构造对象(或者叫实例)。格式是如下:

类名 对象名称=new 类名();

我们可以在新建一个Run类,在这个类里面就只有一个main方法,以前我们也介绍过了,main方法是程序的入口。在这个main方法中,我们构造一个Student对象。代码如下:

public class Run {
public static void main(String[] args) {
Student stu1=new Student();
}
}

在这句代码里面事实包含了两个操作,定义一个Student对象和构造一个Student对象。这两个步骤我们也可以分开来写。

public class Run {
public static void main(String[] args) {
Student stu1;
stu1=new Student();
}
}

三、访问属性和调用方法。

有了对象就会,那么我们就可以访问这个对象的属性和调用它的方法了。属性的访问格式是:

对象.属性名称

如果要赋值就是:

对象.属性名称=属性值

方法的调用格式:

对象.方法名称()

示例代码如下:

Student stu1;
stu1 = new Student(); // 赋值
stu1.name = "小明";
stu1.age = 20;
stu1.gender = true;
stu1.number = 12; //访问
System.out.println(stu1.name);
System.out.println(stu1.age);
System.out.println(stu1.gender);
System.out.println(stu1.number); //方法调用
stu1.dohomework();

java属性和普通方法的更多相关文章

  1. java反射获取类的类名、属性名、属性类型、方法、执行方法、构造函数

    public class Demo02 { @SuppressWarnings("all") public static void main(String[] args) thro ...

  2. java获取properties配置文件中某个属性最简单方法

    假如我想获取src目录下sysConfig.properties中的uploadpath属性的值 方法如下所示: private static final ResourceBundle bundle ...

  3. 为什么java的接口的方法是public abstract修饰?为什么属性是public static final 修饰?

     为什么java的接口的方法是public abstract修饰? 1.首先要明白接口的定义和作用是什么: 接口定义:接口是一个全部由抽象方法组成的集合,里面都是抽象方法和常量,用interface修 ...

  4. Java之属性和普通方法

    一.定义类 上一节讲了很多深奥的理论,那么这节我们就得实践一下,先简单描述一下我们的实体世界:有一个学生小明,那么这个学生就是一个对象,这个对象有哪些属性和方法呢,我们可以先简单抽象一下,属性有(姓名 ...

  5. 【转】win7(windows7)下java环境变量配置方法

    原文网址:http://jingyan.baidu.com/article/925f8cb836b26ac0dde0569e.html win7(windows7)下java环境变量配置方法,java ...

  6. java static 变量,和方法从属于类

    第36集 java static 变量,和方法从属于类 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法

  7. @Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常。

    @Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationEx ...

  8. JavaScript 新语法详解:Class 的私有属性与私有方法

    译者按: 为什么偏要用 # 符号? 原文:JavaScript's new #private class fields 译者:Fundebug 本文采用意译,版权归原作者所有 proposal-cla ...

  9. python面向对象学习(三)私有属性和私有方法

    目录 1. 应用场景和定义方式 2. 伪私有属性和私有方法 在java或者其他的编程语言中,使用访问修饰符来限制属性和方法的访问级别,一般有public.protected.default.priva ...

随机推荐

  1. Django框架(十)--常用字段、参数、元信息、多对多关联关系

    一.ORM字段 # AutoField() int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列 # IntegerField() ...

  2. django url注册器组件, 响应器组件, 分页器组件

    一.url注册器的使用 1.1导入模块 from django.urls import re_path, include from .serializer import views from rest ...

  3. Git问题

    1. LF will be replaced by CRLF rm -rf .git // 删除.git git config --global core.autocrlf false //禁用自动转 ...

  4. img border

  5. nginx 缓存服务

    1.nginx 缓存 upstream imooc { server 116.62.103.228:8001; server 116.62.103.228:8002; server 116.62.10 ...

  6. qhclass

    http://www.qhclass.com/classroom/62/courses

  7. [codevs2460]树的统计

    题目描述 Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w. 我们将以下面的形式来要求你对这棵树完成一些操作: I.                    CHAN ...

  8. React和Redux的开发经验之谈

    1.显示控制用state,共享数据用redux,觉得可以不用redux的就不要用 2.表单项集中的地方,推荐用高阶组件,单个表单项,不推荐用高阶组件 3.涉及对服务数据的处理,在redux的model ...

  9. 洛谷 P1801 黑匣子_NOI导刊2010提高(06) 题解

    昨晚恶补了一下二叉堆的内容 然后就找了几个二叉堆的题来做awa 然后发现用二叉堆做这题复杂度是O(nlogn) 但是有O(n)的解法 (某大佬这么说) 思路大概就是: 利用一个大根堆一个小根堆来维护第 ...

  10. 【AGC009E】Eternal Average

    [AGC009E]Eternal Average 题面 洛谷 题解 神仙题.jpg 我们把操作看成一棵\(k\)叉树,其中每个节点有权值,所有叶子节点(共\(n+m\)个)就是\(0\)或\(1\). ...