/**
* 学生类
* ctrl+o 查询本类的所有属性 和方法
*/
public class Student {
int age; // 年龄
String name; // 姓名 // 自己创建一个本类的 无参 构造方法
public Student() {
} /**
* 创建一个本类的 带参 构造方法
* @param name 用户传递过来的 姓名
* @param age 用户传递过来的 年龄
*
* name 和age 都是我们Student带参构造中的 形参 ! 也是 局部变量!
* 形参和 成员变量 同名了???
* 取谁?实际用的是哪个变量?
* 怎么解决这个同名的问题呢??
* 使用关键字 this ==>当前类的对象
*/
public Student(int age, String name) {
this.age = age;
this.name = name;
}
public class StudentTest {

    public static void main(String[] args) {
/**
* 通过Student类来创建我们一个学生对象
* Student() 无参构造方法
*/
Student stu = new Student();
stu.name = "aa";
stu.age = 20;
System.out.println(stu.name); // 出生的娃娃没有起名
System.out.println(stu.age); System.out.println("------------------------------------------");
// 再次创建一个学生对象 调用 带参构造方法
Student stu2 = new Student(25, "小黑");
System.out.println(stu2.name); // 出生的娃娃有名字
System.out.println(stu2.age);
} }
/**
* 学生类
*/
public class Student {
String name; // 姓名 /**
* 带参构造
*/
public Student(String name) {
this.name = name;
} /**
* 购物的方法
* 01.没有返回值
* 02.没有参数
*/
public void buy() {
System.out.println(name + "在购物");
} /**
* @param money 某人消费的金额
* double money 形参
*/
public void buy(double money) {
System.out.println(name + "在购物,消费金额:" + money);
} /**
* @param money 某人消费的金额
* @param name 某人的姓名
* @return 买了什么东西
*
* return 跳出方法体 并且带有返回值!
* 返回值的类型 必须是 方法的返回值类型!
*
*/
public String buy(double money, String name) {
String result = name + "在购物,消费金额:" + money + "==>得到一大包东西";
return result;
} }
public class StudentTest {

    public static void main(String[] args) {

        // 创建一个学生对象
Student stu = new Student("小红");
String result = stu.buy(500, "小白");
System.out.println(result); } }

OOP⑶的更多相关文章

  1. c#面向对象基础技能——学习笔记(二)基于OOP思想研究对象的【属性】

    字段(成员变量): 字段只能从对象中访问实例字段,无法直接从类中访问(换言之,不创建实例就不能访问),可以理解为:字段一般用在内部数据交互使用,当需要为外部提供数据时,(要优先使用自动实现的属性而不是 ...

  2. 一个简单oop的changeTab

    好多地方都会用到这样一个效果“点击tab切换内容页”,根据自己的想法实现了一下,写了个简单的插件.以前写代码都是标准的函数式编程,现在觉得面向对象编程看起来比较爽,并且更容易维护,于是就用oop的思想 ...

  3. Python OOP(面向对象编程)

    一OOP的作用 在Python中,类是面向对象设计(OOP)的主要工具.通过使用类这种工具,OOP可以: 1.分解代码,最小化代码的冗余. 2.通过定制现有的代码,来编写新的程序,而不用在原处进行修改 ...

  4. OOP,WEB开发实用小技巧

    偶然读到一篇博客,记录一下心得.这种设计对于新手来说一般是想不到的,它充分的发挥了OOP语言的特性,让代码专用而清爽.这是不是重构的思想呢? 我们在写业务层的时候,有很多方法是重复功能的,我们就可以使 ...

  5. 从OOP的角度看Golang

    资料来源 https://github.com/luciotato/golang-notes/blob/master/OOP.md?hmsr=toutiao.io&utm_medium=tou ...

  6. 玩转JavaScript OOP[2]——类的实现

    概述 当我们在谈论面向对象编程时,我们在谈论什么?我们首先谈论的是一些概念:对象.类.封装.继承.多态.对象和类是面向对象的基础,封装.继承和多态是面向对象编程的三大特性. JavaScript提供了 ...

  7. Atitit 面向对象编程(OOP)、面向组件编程(COP)、面向方面编程(AOP)和面向服务编程(SOP)的区别和联系

    Atitit 面向对象编程(OOP).面向组件编程(COP).面向方面编程(AOP)和面向服务编程(SOP)的区别和联系 1. 面向组件编程(COP) 所以,组件比起对象来的进步就在于通用的规范的引入 ...

  8. iOS - 对OOA、OOD、OOP的理解

    很多人在求职的时候,会遇到一个这样的问题:“对OOD/OOP有较深的理解”,这个时候有人就会问OOD.OOP是什么呢?那么今天咱们就一块来看一下OOA.OOD.OOP到底是什么! (一)OOA--面向 ...

  9. OOP感悟

    行内讲的最多的就是出来一年内基本靠copy,一年后才基本懂得如何去写代码,而理解领悟oop,需要的时间却不定. 我工作中,我发现很多人拿着面向对相当的语言作者做着面向过程的事情,不需要知其所以然,只要 ...

  10. 初识JAVA之OOP

    有一段时间没发博客了,每次手打还是很累,但感觉很充实.. 最近发现很多初学者到了面向对象编程这个知识点时,不太清楚类是如何转化成为对象的,很是困扰,今天我在这里谈谈我的理解,大家一起来研究学习... ...

随机推荐

  1. JS 字符串两边截取空白的trim()方法的封装

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Python全栈开发-Day5-常用模块学习

    本节大纲: 模块介绍 time &datetime模块 random os sys shutil shelve xml处理 pyyaml处理 configparser hashlib re正则 ...

  3. R语言画点状误差线

    现在项目需要R语言做几个线性拟合,画一些点图,突然需要画误差线,网上找了下,可以用代码实现..效果如下 xx1<-c(xxxxxx,xxxx,xxxxx) yy1<-c(xxxxxx,xx ...

  4. python+opencv 运行环境搭建

    1:安装pycharm,验证码你懂的 2:安装python3.5以上,或3.6,python2和3 的版本差异还蛮大 3:安装opencv,如下图 以上是方法一,还有之中方法是下载whl文件再手动安装 ...

  5. php解析处理java的btye字节;php解析处理java的ByteArrayOutputStream字节流/数据流

    php解析处理java的btye字节:php解析处理java的ByteArrayOutputStream字节流/数据流 一般java的字节流: 就是t public class Test { publ ...

  6. .net 基础

    之前给大家总结了java的面试几次技巧总结,同学们看了觉得还是不错,能够得到大家的认可,感觉还是挺不错的.现在又有同学来想小编索要.NET面试的总结了,好吧.谁让小编这么好呢!以下是.NET面试之框架 ...

  7. CRM函数CRM_ORDER_MAINTAIN封装

    抬头结构:ZCRM_MAINTAIN_H flag header: 项目表:ZCRM_MAINTAIN_I 合作伙伴:ZCRM_MAINTAIN_P price:ZCRM_MAINTAIN_PR FU ...

  8. Echarts 简单报表系列四:雷达图

    代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  9. 【Python】基础知识

    一.基本概念 1.变量与运算符 Python允许给多个变量同时赋值,等号 (=) 右边的值将赋予左边对应位置的变量. # 将a, b, c的值依次赋予b, c, a b, c, a = a, b, c ...

  10. SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码

    问题: 后台在springMVC中使用hibernate-validator做参数校验的时候(validator具体使用方法见GOOGLE),用properties文件配置了校验失败的错误信息.发现回 ...