java引用数据类型(类)
1 引用数据类型分类
类的类型分两种
1)Java提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供开发者使用。(类的变量是属性)
2)开发者自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供开发者使用。
注意:
类的变量就是属性
类中只能定义变量和方法
2自定义数据类型
在Java中,将现实生活中的事物抽象成了代码。可以使用自定义的数据类型(类)来描述(映射)现实生活中的事物。
类,是引用数据类型,自定义类也是一种数据类型。
自定义类型并非Java预先提供好的类型,而是开发者自己定义的一种引用数据类型,用来描述一个事物。
3 类的定义
java代码映射成现实事物的过程就是定义类的过程。
类的定义格式:
public class 类名{
数据类型 属性名称1;
数据类型 属性名称2;
…
}
Tips:加了public,文件名和类名必须相同
4类的使用
使用格式:
1)导包:将所有的类放到同一个文件夹下,可以避免导包。(所以之前学习的Scanner类和Random类就需要导包)
2)创建对象:数据类型 变量名 = new 数据类型();
3)调用方法:目前定义的自定义类不涉及方法,只是属性(自定义类中的方法部分在面向对象部分讲解)
4)访问属性:变量名.属性 (这是当前的方式,后期会采取调用方法的方式替代掉直接访问的方式来完成对属性的访问。)
例:通过类的定义格式,来进行手机类的描述:
Phone.java文件:
class Phone
{
//属性
String color;
int size;
String brand;
}
TestPhone.java文件:
class TestPhone
{
public static void main(String[] args)
{
//创建Phone对象
Phone p=new Phone(); //调用:对象名.属性,并赋值
p.color="红色";
p.size=5;
p.brand="iphone8"; System.out.println(p.color);
System.out.println(p.size);
System.out.println(p.brand);
}
}
直接编译TestPhone就行,Phone会同时自动编译。(Java提供的类全是内置好了的,所以不需要编译。)

结果:

如果再建一个对象,就会又有了自己的属性,
如:Phone p2=new Phone();
那么,类可以理解为一个模板。
5内存图:

6相关说明
类的属性,也叫成员变量(就是全局变量,但在java中不叫全局变量),方法叫成员方法。
(自定义的)方法中的变量,是局部变量,是属于方法的,不是类的变量。
对象调用方法,方法都是进栈。
java引用数据类型(类)的更多相关文章
- java 引用数据类型(类)
我们可以把类的类型为两种: 第一种,Java为我们提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供我们使用. 第二种,我们自己创建的类,按照类的定义标准, ...
- Java学习笔记之:Java引用数据类型之字符串
一.简介 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串最简单的方式如下: String greeting = "H ...
- Java 引用数据类型
引用数据类型 * A: 数据类型 * a: java中的数据类型分为:基本类型和引用类型 * B: 引用类型的分类 * a: Java为我们提供好的类,比如说:Scanner,Random等. * C ...
- java引用数据类型之Scanner与Random
一 Scanner类 引用数据类型的使用 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型 变量名 = new 数据类型(); 每种引用数据类型都s ...
- java引用数据类型在方法中的值传递
package org.jimmy.autosearch20180821.test; public class TestStringArr { public static void main(Stri ...
- Java引用数据类型
值传递:方法调用时,实际参数把它的值传递给对应的形式参数,方法执行中形式参数值的改变不影响实际参 数的值.引用传递:也称为传地址.方法调用时,实际参数的引用(地址,而不是参数的值)被传递给方法中相对应 ...
- Java入门(6)——集合、基本数据类型和引用数据类型的相互转换
集合: 1.HashMap ----> 类 概述: 通过key可以找到value, key就是键, values就是值. 俗称键值对. 特点: 无序的 值可以重复 键不可以重复的 如 ...
- java之基本数据类型与引用数据类型
基本数据类型 需要注意的是字符是基本数据类型,但是字符串不是基本数据类型. 引用数据类型 类.接口类型.数组类型.枚举类型.注解类型. (上面说的字符串String属于引用数据类型中“类”的范畴) 两 ...
- Java学习笔记整理第一章 java基本数据类型、修饰符、运算符
Java关键字: Java关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量.Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的 ...
随机推荐
- 【C++基础】形参实参
c++规定:一个函数的默认实参既可以在定义中,也可在声明中指定,但在一个文件(准确的说,是一个作用域)中只能为一个形参指定默认实参一次
- hdu 2222 Keywords Search——AC自动机
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2222 第一道AC自动机! T了无数边后终于知道原来它是把若干询问串建一个自动机,把模式串放在上面跑:而且只 ...
- MySQL安装过程中对The error code is 2203的解决方案
MySQL安装过程中对The error code is 2203的解决方案 1.问题描述 Windows系统安装MySQL遇到The error code is 2203.,具体描述如下 The i ...
- KCF+Opencv3.0+Cmake+Win10 测试
配置 需要的文件下载 安装CMake,安装opencv3.0.0 在KCFcpp-master 目录下新建一个文件夹,命名为build 打开CMake-GUI配置如下: 点击Configure,编译器 ...
- POJ3159(最短路)
Candies Time Limit: 1500MS Memory Limit: 131072K Total Submissions: 27051 Accepted: 7454 Descrip ...
- 四 akka学习 四种多线程的解决方案
http://blog.csdn.net/chenleixing/article/details/44044243 四种多线程的解决方案
- nodejs的mysql模块学习(二)连接数据库
nodejs连接mysql的方式有两种 官方建议的第一种是 let mysql = require('mysql'); let connection = mysql.createConnection( ...
- 实验楼之Linux快捷、用户及文件权限、文件查看
实验二 知识点1:通常不是直接与系统打交道,而是通过一个叫做Shell的中间程序. shell即是用户交互的界面,又是控制系统的脚本语言.常用的有bash. zsh, ksh, csh, 命令行模式: ...
- 33.Docker安装Mysql及用户配置
mysql在官方上有两个镜像 这个是一个优化过的mysql 使用这个命令 安装mysql 演示最简单的方式去安装mysql: 这种方式安装的用户名没有,密码没有 docker run -d -p 33 ...
- IIS7启用GZip压缩
本文转载自 http://www.cnblogs.com/kissdodog/p/6252129.html GZip压缩通常会达到70%以上的压缩率,如果是手机Web这无疑会使网站的访问速度大大增加, ...