一、面象对象

二、什么是类

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

简单讲类是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. zoj 3629 Treasure Hunt IV 打表找规律

    H - Treasure Hunt IV Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu ...

  2. cocos2dx 字符串拼接

    ;i<;i++){ ]; sprintf(str,"%d",i); ]; strcpy(totalFilename, "game_loading") ; ...

  3. Git_使用GitHub

    我们一直用GitHub作为免费的远程仓库,如果是个人的开源项目,放到GitHub上是完全没有问题的.其实GitHub还是一个开源协作社区,通过GitHub,既可以让别人参与你的开源项目,也可以参与别人 ...

  4. CareerCup之1.3字符串去重

    [题目] 原文: 1.3 Design an algorithm and write code to remove the duplicate characters in a string witho ...

  5. LNMP下FTP服务器Pureftpd的安装和使用

    LNMP一键安装包里的Pureftpd安装脚本是需要MySQL支持的,安装前需要已经安装好LNMP,这个自带一个PHP编写的用户管理界面. 安装 进入lnmp解压后的目录,执行:./pureftpd. ...

  6. Android 手机 无线 ADB

    要用网络调试Android需要设备已经获取root权限 如果手机没有命令行工具,请先在手机端安装终端模拟器,然后在终端输入: $su #stop adbd #setprop service.adb.t ...

  7. linux内核源码中常见宏定义

    http://blog.csdn.net/yangdelong/article/details/5508057

  8. java开发C语言编译器

    http://study.163.com/course/introduction.htm?courseId=1003169025 http://study.163.com/course/courseM ...

  9. [Node.js]Express web框架

    摘要 Express是一个简洁灵活的node.js web应用框架,提供了一系列强大特性帮助你创建各种web应用和丰富的http工具.使用express可以快速创建一个完整功能的网站. Express ...

  10. MVC中CheckBoxList的3种实现方式

    比如,当为一个用户设置角色的时候,角色通常以CheckBoxList的形式呈现.用户和角色是多对多关系: using System.Collections.Generic; using System. ...