一、面象对象

二、什么是类

我肯定说,不知道、不清楚。

简单讲类是java中的基本单元,类是具有相同特性和行为的对象集合

三、类的定义

3.1、类的定义

class 类名称{
数据类型  属性 ;
….                           
 
public 返回值的数据类型 方法名称(参数1,参数2…){
    程序语句 ;    
     [return 表达式;]
}
}
 

3.2、类包含:属性和方法(行为)

package com.pb.demo2;
/*
* 人类
*/
public class Person { //Persion为类名
/*
* 属性,name,sex,age
*/
public String name; //名字
public String sex ; //性别
public int age; //年龄 /*
*方法(行为)
*/
//吃饭
public void eat(){
System.out.println("吃饭");
}
//工作
public void work(){
System.out.println("工作");
}
}

四、创建对象

对象是类的实例

package com.pb.demo2;

public class PersonTest {

    public static void main(String[] args) {
//创建Person类的对象
Person person=new Person();
//调用Person类的方法
person.eat();
person.work();
} }

五、有参数的方法

package com.pb.demo2;
/*
* 人类
*/
public class Person { //Persion为类名
/*
* 属性,name,sex,age
*/
public String name; //名字
public String sex ; //性别
public int age; //年龄 /*
*方法(行为)
*/
//吃饭
public void eat(String name){ //传入一个String类型参数
System.out.println(this.name+"邀请"+name+"一起吃饭");
}
//工作
public void work(){
System.out.println(name+"的工作理念是,干活挣钱有饭吃!");
}
}

测试类

package com.pb.demo2;
/*
* 测试类
*/
public class PersonTest { public static void main(String[] args) {
//创建Person类的对象
Person hanbing=new Person();
hanbing.name="韩冰"; //姓名赋值
hanbing.age=22; //年龄
hanbing.sex="女"; //性别
hanbing.eat("刘顿");
hanbing.work(); } }

结果:

韩冰邀请刘顿一起吃饭
韩冰的工作理念是,干活挣钱有饭吃!

六、类方法的组成

共有5部分组成,访问修饰符,返回值类型,方法名,参数列表,方法体

七、方法重载

7.1、方法重载

方法名相同,参数项不同和(访问修饰符和返回值类型)无关

例如:

package com.pb.demo2;
/*
* 人类
*/
public class Person { //Persion为类名
/*
* 属性,name,sex,age
*/
public String name; //名字
public String sex ; //性别
public int age; //年龄 /*
*方法(行为)
*/
//吃饭
public void eat(String name){ //传入一个String类型参数
System.out.println(this.name+"邀请"+name+"一起吃饭");
}
//工作
public void work(){
System.out.println(name+"的工作理念是,干活挣钱有饭吃!");
}
//工作
public void work(String contect){
System.out.println(name+"的工作理念是: "+contect);
}
}

测试类:

package com.pb.demo2;

import java.util.Scanner;

/*
* 测试类
*/
public class PersonTest { public static void main(String[] args) {
/*//创建Person类的对象
Person hanbing=new Person();
hanbing.name="韩冰"; //姓名赋值
hanbing.age=22; //年龄
hanbing.sex="女"; //性别
hanbing.eat("刘顿");
hanbing.work();
*/
Scanner input = new Scanner(System.in);
Person guest=new Person();
System.out.println("*********测试**********");
System.out.println("请输入姓名:");
String name=input.next();
guest.name=name; //为对象姓名赋值
System.out.println("请输入年龄:");
int age=input.nextInt();
guest.age=age; //为对象年龄赋值
System.out.println("请选择性别:");
System.out.println("1、男 2、女");
switch(input.nextInt()){
case 1:
guest.sex="男"; //为对象性别赋值
break;
case 2:
guest.sex="女"; //为对象性别赋值
break;
default:
System.out.println("输入错误");
return;
}
//调用不带参数的work方法
guest.work();
System.out.println("请输入新的工作理念:");
String contect=input.next();
//调用带参数的work方法
guest.work(contect);
} }

结果:

*********测试**********
请输入姓名:
张三
请输入年龄:
22
请选择性别:
1、男 2、女
1
张三的工作理念是,干活挣钱有饭吃!
请输入新的工作理念:
挣钱,取老婆
张三的工作理念是: 挣钱,取老婆

八、成员变量和局部变量

成员变量是定义在类中有变量,在整个类中都有效都可以作用

局部变量在方法中声明的变量,只在这个方法中有效

当成员变量和变量同名时,可以使用this关键字来调用成员变量,如果不加this默认调用局部变量

九、判断下列哪些是方法重载

public void cal(int x,int y,int z){...}

A:public int cal(int x,int y,float z){return 0;}

B:public void cal(int x,int y,int z){return 0;}

C:public int cal(int x,int z){....}

D:public void cal(int x,int y,int z){...}

答案为:A,C

下一题:

A:int f1(){}    int f1(int a){}

B:void f1(int a){}   int f1(int a){}

C:void f1(){}   int f1(int a){}

D: int f1(int b){}  int f1(int a){}

答案为:A,C

Java从零开始学十一(类和对象)的更多相关文章

  1. Java从零开始学三十九(对象序列化)

    一.序列化 将对象的状态存储到特定存储介质中的过程 对象序列化,就是把一个对象变为二进制的数据流的一种方法,通过对象序列化可以方便的实现对象的传输或存储.   序列化保存对象的“全景图”,构建对象的“ ...

  2. Java学习笔记之---类和对象

    Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态  例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...

  3. 从零开始学java(二)类与对象

    面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为. 类是对象的抽象,对象是类的具体实例. 1.构造一个类,让其拥有属性和方法 ...

  4. Java从零开始学四十一(反射简述二)

    一.实例化Class类对象 实例化Class类对象的方法有三种: 第一种:通过forName()方法 第二种:类.class 第三种:对象.getClass() 二.Class类的常用方法 No. 方 ...

  5. Java编程里的类和对象

    像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...

  6. Java学习笔记 04 类和对象

    一.类和对象的概念 类 >>具有相同属性和行为的一类实体 对象 >>实物存在的实体.通常会将对象划分为两个部分,即静态部分和动态部分.静态部分指的是不能动的部分,被称为属性,任 ...

  7. JAVA编程中的类和对象

    1:初学JAVA,都知道JAVA是面向对象的编程.笔者这节开始说说类和对象.(实例仅供参考,如若复制粘贴记得修改包名和类名,避免出错) 学习JAVA的快捷键,Alt+/代码补全功能,其实此快捷键启动了 ...

  8. Java从零开始学四十五(Socket编程基础)

    一.网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可 ...

  9. Java从零开始学四十四(多线程)

    一.进程与线程 1.1.进程 进程是应用程序的执行实例. 进程是程序的一次动态执行过程,它经历了从代码加载.执行到执行完毕的一个完整过程,这个过程也是进程本身从产生.发展到最终消亡的过程 特征: 动态 ...

随机推荐

  1. ASP.NET Web API 记录请求响应数据到日志的一个方法

    原文:http://blog.bossma.cn/dotnet/asp-net-web-api-log-request-response/ ASP.NET Web API 记录请求响应数据到日志的一个 ...

  2. Jmeter学习之— 参数化、关联、断言、数据库的操作

    一. Jmeter参数化1. 文件参数化解释:创建测试数据,将数据写入TXT文件文件中,然后Jmeter从文件中读取数据.例如用户注册操作:1. 首先在Jmeter下创建一个线程组,如下图: 2. 然 ...

  3. linux_jdk_mysql_tomcat

    1 linux下安装jdk的步骤: 0. 查找原有的jdk: rpm -qa | grep java 删除原有的jdk: rpm -e --nodeps java-1.7.0-openjdk-1.7. ...

  4. 通过maven-war-plugin插件对war包分环境打包

    针对多环节,从源头打包入手,当然这些都可以在运维阶段用脚本进行替换来代替 resources/environment/下有四个环境,local本地.dev开发.test测试.pre预上线.prod生产 ...

  5. CentOS 7修改网卡名为eth0

    第一步: 编辑文件加入如下所示参数 vi /etc/sysconfig/grub GRUB_CMDLINE_LINUX=”rd.lvm.lv=vg0/swap vconsole.keymap=us c ...

  6. tracef 安装 跟踪 函数调用图

    http://www.prevanders.net/dwarf.html redhat 5.4 tar -zxvf libdwarf-20140519.tar.gz [root@localhost d ...

  7. 淘宝--印风 专注于MySQL内核代码

    http://blog.csdn.net/zhaiwx1987/article/details/6113472?utm_source=jiancool

  8. DM368 UBL和u-boot的裁剪

    转载:http://blog.csdn.net/olei_oleitao/article/details/7919307   一.DM36X的BOOT过程介绍 DM36x的BOOT过程和DM6446. ...

  9. 理解与学习linux 文件系统的目录结构

    1. linux文件系统的结构 linux文件系统是以一种树形结构存在,Linux的文件系统的入口就是/,所有的目录.文件.设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者. 2. ...

  10. Java获取电脑IP、MAC、各种版本

    Java代码获取电脑IP.MAC.各种版本 package com.rapoo.middle.action; import java.io.BufferedReader; import java.io ...