参照:https://www.cnblogs.com/ZXF6/p/11530009.html

类和对象

/**
* java 中的类和对象
*
* 一、局部变量的作用域。
*
* 二、面向对象的概述
* 但是在面向对象设计之前,广泛采用的是面向过程,面向过程只是针对于自己来解决问题。
* 面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性。
*
* 面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,
* 所以,面向对象的开发更像是一个具备标准的开发模式。
*
* 可维护性 需求分析
*
* 2. 在面向对象定义之中,也规定了一些基本的特征:
抽象。
* (1)封装:保护内部的操作不被破坏;
* (2)继承:在原本的基础之上继续进行扩充;
* (3)多态:在一个指定的范围之内进行概念的转换。
*
* 3. 面向对象的开发?
* 对于面向对象的开发来讲也分为三个过程:OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程)。
*
* 4.类与对象是整个面向对象中最基础的组成单元。
*
* 5.对象是将来用于存储数据(实体类)
*
* 三、类中的函数?
* 无参数无返回值的函数
*
A 函数的定义
【权限修饰符】 void 函数名(){ }
static void hah(){} 四、类
类是对象的模板,对象是类的实例?
类只有通过对象才可以使用,而在开发之中应该先产生类,之后再产生对象。类不能直接使用,对象是可以直接使用的。 定义一个 people 类
他的属性有 age sex tall weight ... int age ;
string sex;
double tall;
double weight; 新建一个测试类
JavaTest 创建对象。
people p = new people();
赋值。
p.age = 15;
p.sex = "男";
... 1
*/
public class JavaObject {
public static void main(String[] args) { int b3=456;
} /**
* 局部变量 :定义到函数内部的变量 称之为 局部变量
* 局部变量的作用域:局部变量的使用范围
* 从变量定义开始 到所在的结束大括号
* 在同一作用域内 不能重复定义变量
*/
@Test
public void juBu(){
int a = 10;
if (a>5){
int b = 20;
System.out.println("b====="+b);
System.out.println(a);
} int b2 =30;
System.out.println("b2===="+b2); } /**
* 无参数无返回值的函数
* 1.权限修饰符
* 2.返回值类型
* 3.方法名 函数名 小驼峰的命名方式。。
* (): 参数列表
* {}: 函数体
*/
public void haha(){ } /**
函数的调用?
1. 非静态 对象名.函数名
Test01 test01 = new Test01();
test01.haha();
2.
*/ }

函数

/**
* 一、java中的函数?
*
* 1.【修饰符】 返回值类型 函数名(参数类型 参数名,参数类型 参数名,........) {
* 函数体
* }
*
* 2. 无参数无返回值的函数
* 定义: 【修饰符】 void 函数名() {
* 函数体
* }
*
* 为什么需要函数:函数能实现某些功能
* 函数的调用(非static) : 1 创建对象
* 2 对象名.函数名();
*
*
* 3. 有参数 无返回值的函数
* 定义: 【修饰符】 void 函数名(参数类型 参数名,参数类型 参数名,........){
* 函数体/方法体
* }
     参数和返回值 都是 数据传递的一种方式。。。
*
* 二 、java中的重载?
*
* 三、 构造函数?
* 1. 在一个类中 默认会生成一个公共无参数的构造函数(也就是说 你不写 默认会帮你加上)
*
* 2. 我们一旦自己写了构造函数 那么公共无参数的构造函数就不会自动生成了
* 所以 我们一旦添加公共有参数的构造函数 一定要确保无参数构造函数的存在
* (OCJP)
*
*
* */
public class JavaFunction { public static void main(String[] args) {
/*
函数的参数和返回值的使用 取决于实际需求。 */
int hah = add(45, 55);
System.out.println(hah); // Haha() 构造函数。
Haha haha = new Haha();
} /**
* 构造函数
*/
static class Haha{
public static void main(String[] args) {
int age ;
String name; } //自己写了构造函数 那么公共无参数的构造函数就不会自动生成了
public Haha(){ } // 自己写构造函数的作用(通过构造函数传参)
public Haha(int age,String name){
System.out.println("创建带参的构造函数 , 需要手动添加空的构造函数");
}
} /**
*1. 无参数无返回值的函数
*/ public void haha(){
System.out.println(66);
} /**
* 2.有参数 无返回值的函数
*/ static void add(int a, int b){ // 有返回值的方法 return 的内容 要和返回值类型匹配
int result = a+b; // 以 return 语句执行后的代码不执行)
} /**
* 3.有返回值没有参数
*/
int jian(){ // 函数体。
return 0;
} /**
  有参数有返回值的方法
  
*/   double getDifference(int a, int b){
      double result = a - b;
      return result;
} /**
* 在同一类中,函数名相同,参数列表(参数的个数,参数的类型,类型的顺序)不同 此时就是函数的重载
*/
int add(int a){
return a;
} /**
* 重载和 方法的返回值类型没有关系 只和参数列表有关
* 两个 add 返回值类型不同
* 报错 :已经在类中定义了add 方法
*
*
* @return
*/
int add(){
return 0;
} /**
* 假设 编译不报错 请问,你在主函数中调用 add 方法
* 问题来了 你调用的是 int ,还是 void?
* 所以 Java中 不能根据返回值类型进行重载。
*/
void add(){ }
}

Java 基础02的更多相关文章

  1. java基础-02数据类型

    基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...

  2. Java基础02 方法与数据成员

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...

  3. 二、Java基础--02

    作为本人首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧). ...

  4. java基础02

    使用 myeclipse写第一个java程序 之后  右键 点击 src  创建 Class /** * package:包的声明! * 代表我们当前的java源文件在项目中的位置! * 必须位于除了 ...

  5. java基础02 数据类型转

    一.回答问题 float f1 = 6.66f; float f2 = (float) 6.67; f1==f2? /** * * @author sun * */ public class Demo ...

  6. Java基础02 方法与数据成员(转载)

    对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象.   调用同一对 ...

  7. java 基础 02 数据类型、运算符、分支结构

    内容: (1)数据类型 (2)运算符 (3)分支结构 1.数据类型 java语言中的基本数据类型:byte.short.int.long.float.double.boolean.char. 1.1布 ...

  8. java基础-02:编译型和解释型

    Java程序运行机制: Java语言的编译-->解释-->运行过程 1.编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的 ...

  9. Java基础——02

    今日学习 Java API Scanner package cn.lsl.day03.demo01; //导包 import java.util.Scanner; public class demo0 ...

随机推荐

  1. 【LeetCode】724. Find Pivot Index 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 先求和,再遍历 日期 题目地址:https://le ...

  2. 【剑指Offer】二叉树的下一个结点 解题报告(Python)

    [剑指Offer]二叉树的下一个结点 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews ...

  3. AWS 15 年(1):从 Serverful 到 Serverless

    2006年,AWS发布了其第一个Serverless存储服务S3和第一个Serverful计算服务EC2,这也是AWS正式发布的前两个服务,开启了云计算波澜壮阔的旅程.2014年,AWS发布了业界第一 ...

  4. 【模型推理】量化实现分享三:详解 ACIQ 对称量化算法实现

      欢迎关注我的公众号 [极智视界],回复001获取Google编程规范   O_o   >_<   o_O   O_o   ~_~   o_O   大家好,我是极智视界,本文剖析一下AC ...

  5. 第五十一个知识点:什么是基于ID的加密的安全模型,然后描述一个IBE方案

    第五十一个知识点:什么是基于ID的加密的安全模型,然后描述一个IBE方案 在公钥密码学中,如果Alice想要给Bob发送一条消息,她需要Bob的公钥,一般来说公钥都很长,就像一个随机的字符串. 假设A ...

  6. DFT, DHT, DCT, DST

    目录 基本 酉变换 others Fourier-related Transforms DFT DHT DCT 与DFT的联系 DST 与DFT的联系 Gonzalez R. C. and Woods ...

  7. Android程序设计基础 • 【目录】

    章节 内容 实践练习 Android程序设计基础作业目录 (作业笔记) 第1章 Android程序设计基础 • [第1章 Android程序入门] 第2章 Android程序设计基础 • [第2章 基 ...

  8. Log4j2进阶使用(更多高级特性)

    1.高级进阶说明 本文介绍Log4j2高级进阶使用, 基于Log4j2进阶使用(按大小时间备份日志), 介绍更多的高级特性, 本文基于上文给出的完整log4j2.xml, 修改对应的配置项, 演示高级 ...

  9. Windows实现桌面录屏、指定窗口录制直播,低延时,H5页面播放

    接着前面记录的3种方式实现桌面推流直播: 1.Windows 11实现录屏直播,搭建Nginx的rtmp服务 的方式需要依赖与Flash插件,使用场景有限 2.Windows 11实现直播,VLC超简 ...

  10. VoIP语音处理流程和知识点梳理

    做音频软件开发10+年,包括语音通信.语音识别.音乐播放等,大部分时间在做语音通信.做语音通信中又大部分时间在做VoIP语音处理.语音通信是全双工的,既要把自己的语音发送出去让对方听到,又要接收对方的 ...