面向对象

类和对象

类:具有相同属性和方法的一组对象的集合
属性:对象的静态描述
方法:对象的动态描述

对象的继承(inheritance)

对象具有继承属性
原来的对象称作父类对象,新对象称作子类对象
父类子类有相同种类的关系

对象的重用

尽量将对象的重用性最大化,尽可能利用现有的对象进行保留、修改、新增

对象的封装(encapsulation)

被重复使用的关键因素可以进行封装,只留下操作的接口,使对象容易使用,不需要关心内部的细节,无论内部构造多复杂

类语法

类定义

[访问权限修饰符] [final] [abstract] class 类名 [extends 单一父类] [implements 接口1,接口2.……]
{
//属性
//方法
}
tips
1.[]中可以忽略
2.类名称规定:仅使用_ $ 0~9 和英文字母,第一个字符不可以是0~9,类名称不可以是关键字(keyword)
3.Java中字母大小写视为不同

类的属性

[访问权限修饰符] [final] [static] 数据类型 属性成员名称

class Cust//4个属性成员
{String name;int ID;String PWD;int money;
}

类的方法

[访问权限修饰符] [final] [static] [abstract] 返回值数据类型 方法名([形式参数列表]) [throws 异常类]

void initCust(String newName, int newID, String newPWD, int newMoney)
{name = newName;ID = newID;PWD = newPWD;money = newMoney;
}
void printCust(){System.out.println("户名:"+name);System.out.println("账号:"+ID);System.out.println("账户余额:"+money);
}

tips
1.参数列表:方法的传入信息管道
2.返回值:方法输出信息的通道
3.不要求用户一定传入参数
4.没有返回值的方法必须指定返回值数据类型为void
5.若有返回值用return

main()方法

程序的入口点
.java中可以定义多个主类,但是只能有一个public类
.java的文件名要和public类名相同

class WelcomeDemo
{public static void main(String[] args)System.out.println("hello java")
}

tips
1.public关键字是访问权限修饰符,声明主方法为public使其他类可以访问这个方法
2.static表示main是静态方法,main中的代码存储在静态存储区
3.没有static编译不会出错,但执行会报错,提示main()方法不存在,因为包含main的类没有实例化,main的方法也不会存在。static表示方法是静态的,不需要实例化即可使用。
4.void关键字表明main()返回值无类型
5.String[] args:在命令行状态下向main方法传递数据。args参数数组名用户可以任意修改

方法的调用

public class RecArea{static int area(int a, int b){int s;s = a * b;return s;
}
public static void main(String[] args){int result,x=5,y=6;result = area(x,y);System.out.println(result);
}
}

注意:第二行的static(第一个出现的static)不能省略,省略会出现提示错误
表示在静态方法中,不能直接访问非静态成员

Java中对象和类(main主类简介)相关推荐

  1. java有且仅有一个main_组成java Application的若干类中,有且仅有一个主类,只有主类中含有主方法main();...

    [单选题]Java 应用程序入口的 main 方法,其声明格式可以是(A) [填空题]点的水平投影与正面投影的连线( ) 于 OX 轴. [单选题]-Is there anything wrong w ...

  2. Java一个源文件中可以有多个主类

    Java一个源文件中可以有多个主类 一个Java源文件中可以有多个主类,但是只能有一个公共类或者没有公共类,所谓主类就是函数运行的一个入口,public static void main.我们可以通过 ...

  3. java源程序可以有几个主类_Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是主类。_学小易找答案...

    [填空题]分析以下程序的执行结果 #include using namespace std; class Sample { int x; int y; public: Sample(int a,int ...

  4. java基础,继承类题目:编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类 E...

    21.编写一个Java应用程序,该程序包括3个类:Monkey类.People类和主类 E.要求: (1) Monkey类中有个构造方法:Monkey (String s),并且有个public vo ...

  5. java在dog中定义name变量,组合构造 冯跃峰 java中组合的应用(不相干的类共同完成一个功能)+构造器回顾...

    java中组合的应用(不相干的类共同完成一个功能)+构造器回顾:今天我们了解到java的组合.可以说java组合是非常的重要的.可以对类进行封装,将底层的内容封装起来.甚至于java的继承都没有其重要 ...

  6. text pad java_错误:无法在Textpad 8中找到或加载主类

    我一直在尝试重新编程,我一直在重做一些旧的实验室 . 我正在设置Textpad 8,所以我可以运行java应用程序,它工作正常,直到我添加如下所示的包语句: package pkg; public c ...

  7. Java中的Type接口和Class类区别和联系

    Java中的Type接口和Class类有什么区别 Type是Class的父接口. Type 是 Java 编程语言中所有类型的公共高级接口.它们包括原始类型.参数化类型.数组类型.类型变量和基本类型. ...

  8. 编写一个Java应用程序,该应用程序包括2个类:Print类和主类E。Print 类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的 立方和等于这个三位数本身,如

    **编写一个Java应用程序,该应用程序包括2个类:Print类和主类E.Print 类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的 立方和等于这个三位数本身 ...

  9. java 中成员变量的名字和类的方法的名字可以一样.

    java 中成员变量的名字和类的方法的名字可以一样. public class fourone {public static void main(String[] args) {int first[] ...

  10. java 中操作字符串都有哪些类?它们之间有什么区别?

    java 中操作字符串都有哪些类?它们之间有什么区别? String.StringBuffer.StringBuilder String : final修饰,String类的方法都是返回new Str ...

最新文章

  1. 再见了Spring Cloud!这个架构有点厉害,甚至干掉了Dubbo!
  2. 设计模式之 Singleton 单例模式
  3. C++const与#define 相比,有何优点?
  4. 【Mybatis】sqlSessionTemplate.getConnection() 遇到 java.sql.SQLException: Connection is closed
  5. 加州大学欧文分校 计算机专业,UCI的Computer Science「加州大学欧文分校计算机科学系」...
  6. verilog异步复位jk触发器_以不变应万变的异步FIFO面试宝典(二)
  7. 又到开学季 学习神器走一波 物联网开发板
  8. enityframework 已连接的当前状态为打开。_蓝牙连接有问题吗?尝试针对macOS的以下6个修复程序
  9. STM32CubeMX 配置STM32F407 实现HAL库延时微妙方案
  10. SaaS架构设计之高性能的Multi-Tenant最佳实践
  11. 建立apk定时自动打包系统第一篇——Ant多渠道打包并指定打包目录和打包日期...
  12. 充一次电使用一年的手机_手机充一次电用一年?现有技术难实现
  13. java面试题-基础篇(万字总结,带答案,面试官问烂,跳槽必备)
  14. java 数字水印_如何使用JAVA实现数字水印
  15. 史上最全的谷歌公司那些黑科技
  16. 全国教师计算机职称考试题库,全国信息技术教师考试题库及答案(2016最新版)
  17. 苹果电脑如何正确断网?Mac电脑断网方法
  18. TBase数据库开源后重磅升级,复杂查询性能最高提升十倍
  19. ~4.1 剑指 Offer 05. 替换空格
  20. 超分辨率重建基础知识总结

热门文章

  1. Microsoft.XMLHTTP“没有权限”的错误
  2. Grails 技巧 - View 篇
  3. SEO搜索引擎优化二十八条经验建议
  4. 转帖:算法好学吗?——《大话数据结构》读者书评
  5. Hibernate入门案例
  6. 谷歌约束控件(ConstraintLayout)扁平化布局入门
  7. [2018.07.10 T2]不回文
  8. fdisk 创建和维护磁盘分区命令(MBR分区方案)
  9. 不同版本web.xml文件头声明
  10. 网页设计图片向上浮动_CSS实现图片向上浮动