一、面象对象

二、什么是类

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

简单讲类是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. alpha冲刺——代码规范、冲刺任务与计划(追光的人)

    代码规范 代码规范整合了自身项目实践还有诸多好的大公司的代码规范.如阿里巴巴开发手册.华为Java规范.W3C前端规范等. 由于内容过于详细和细致,为了方便查看,将其放置在了showDoc网站上(同时 ...

  2. 通过yum来安装vsftpd

    Linux系统:centos6.6.  安装步骤  1.通过yum来安装vsftpd [root@localhost ~]# yum -y install vsftpd 2.设置为开机启动 [root ...

  3. CentOS的update-grub2命令

    这个和Ubuntu还是有些区别,在CentOS修改成如下: grub2-mkconfig -o /boot/grub2/grub.cfg

  4. 详解DHCP工作方法,并用wireshark对DHCP四个数据包抓包分析

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  5. UIView 精要概览(持续更新)

    --1-- 知识点:为UIView 设置圆角 前提:layer 属性需要 <QuartzCore/QuartzCore.h> 静态库的支持,所以需要提前导入到项目中,并在你的文件中包含#i ...

  6. Sublime Text2安装emmet(原名Zen Coding)总结

    首先,安装好Sublime( 我用的是版本号2),之后注冊好.Sublime Text2.0.2注冊码:http://xionggang163.blog.163.com/blog/static/376 ...

  7. maven项目如何生成war文件

    配置 你的pom.xml文件,在你的overview视窗里 配置 packaging为 war 然后然后点击 pom.xml右键,run as 选择 install 或是 package如果项目没问题 ...

  8. 如何设置eclipse不同的workspace共享配置

    在很多的项目中,每个项目使用一个workspace,结果每新建一个workspace重新配置一下,但是配置的东西都是一样的,烦死了,有什么好办法可以共享一下配置呢? 总结一下,复制工作空间配置步骤如下 ...

  9. FFMPEG视音频编解码零基础学习方法 【荐】

    在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频 编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在 ...

  10. 关于Themleaf学习总结

    此篇记录学习Themleaf测试的相关用例: study01 Thymeleaf 的HelloWorld级别的例子 简单介绍Thymeleaf的工作流程 study02 使用spring.thymel ...