关于Java的对象、数组、String类的具体用法
对象的行为:
1、内存分配(栈和堆的区别)
栈:保存局部变量的值(用来保存基本数据类型的值;保存类的实例的引用)
对:用来存放动态产生的数据,比如new出来的对象
2、调用方法
方法返回一个值、方法不返回值、方法抛出一个异常给方法的调用者
public class Date{
public int day,month,year;
public int getDay(){//返回整型
System.out.println("在getDay方法内部");
return day;
}
public void printDate(){//不返回值
System.out.println("在printDate方法内部");
System.out.println(month+"/"+day+"/"+year);
}
}
3、方法签名
包括:1)访问修饰符public允许从任何地方调用该方法、private除了在类内部以外其他皆不可以调用、protected和默认访问修饰符分别适用于继承和包。
2)可选修饰符static、final、abstract、native、synchronized、native
3)返回值(方法签名必须包括返回值的类型)
4)方法名(方法签名必须出现在返回值之后,使用驼峰命名法)
5)形式参数列表(在方法名的后面必须是用一对括号括起来的形式参数列表)
6)抛出的异常列表
注意:用static修饰的为静态成员,为类的所有对象共享(分配1个空间);在静态方法中,只能直接调用静态成员,不能直接调用非静态成员;成员方法中,可以直接调用静态成员与非静态成员。
4、形式参数与实际参数
形式参数列表:用于声明传递到方法中的数据类型
实际参数:传递给形式参数的数据
5、方法重载
含义:一个类有两到多个同名但是有不同参数列表的方法
要求:参数类型不同、参数个数不同、参数列表不同
例如:1)public float computePay(double d,int x);
public float computePay(double d);
2)public void setDay(int x,int y,long z);
public boolean setDay(long a,int b,int c);
6、构造器(构造方法)
用途:在对象实例化时被调用,初始化对象中的成员变量
属性:名字与类名一致;没有返回值类型
注意:1)默认情况下,类中有一个无参构造方法;2)当写出带参构造方法系统默认的无参构造方法就不再生成
格式:
public class Radio{
public int channel;
public Radio(){}//默认构造器
public Radio(int c){//带参构造器
channel=c;
}
}
通过this();构造器调用其他构造器,必须是构造器中的第一句可执行语句;
数组:
7、数组:
含义:存储在一个连续的内存块中的元素集合,每个元素是相同的数据类型,通过索引进行区分,第一个元素的索引为0;
声明并分配空间:double[] temps=new double[30];
声明并分配空间时元素初始化:int score=new int[]{1,2,3....};或者int[] score={1,2,3....};
8、数组长度
1)ArrayIndexoutofBoundsException:数组下标越界
2)数组是对象是引用数据类型
3)length属性代表数组的大小:
public void register(){
Scanner input = new Scanner(System.in);
for(int i = 0; i < users.length; i++){
if (users[i] == null){
users[i] = new User();
System.out.print("用户名:");
users[i].username = input.next();
System.out.print("密码:");
users[i].password = input.next();
break;
}
}
4)foreach:用于数组组成或集合遍历
public void showAllUsers(){
for (User user : users) {
if (user != null)
System.out.println(user);
}
}
9、引用数组
如下声明了一个Employee类型的引用数组:Employee [] 数组名;
对象数组:单个元素类型[] 数组名=new 类型[长度](User[] users=new User[100;])
10、String类的方法摘要(JDK_API_1_6_zh_CN.CHM文档)
关于Java的对象、数组、String类的具体用法的更多相关文章
- java的对象锁和类锁
在java编程中,经常需要用到同步,而用得最多的也许是synchronized关键字了,下面看看这个关键字的用法. 因为synchronized关键字涉及到锁的概念,所以先来了解一些相关的锁知识. j ...
- JAVA笔记3__字符串String类/对象一对一关联
import java.lang.String; import java.util.Scanner; public class Main { public static void main(Strin ...
- 跟着刚哥梳理java知识点——深入理解String类(九)
一.String类 想要了解一个类,最好的办法就是看这个类的实现源代码,来看一下String类的源码: public final class String implements java.io.Ser ...
- java学习笔记之String类
String类总结 String类概述: java.lang.String 类是字符串操作类 String类的常用构造方法: //1.直接赋值 String str= "hellojava& ...
- Java (六、String类和StringBuffer)
Java String 类 字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 创建字符串 // ==比较的是字符串在栈中存放的 ...
- Java基础_0307:String类的基本概念
String类的两种实例化方式 直接赋值: String str = "www.YOOTK.com"; 构造方法: 构造方法:public String(String str),在 ...
- Java常见对象之String
String类的概述 String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现.字符串是常量,一旦被赋值,就不能被改变. String ...
- 理解Java中对象基础Object类
一.Object简述 源码注释:Object类是所有类层级关系的Root节点,作为所有类的超类,包括数组也实现了该类的方法,注意这里说的很明确,指类层面. 所以在Java中有一句常说的话,一切皆对象, ...
- 菜鸡的Java笔记 第十三 String 类的两种实例化方法
String 类的两种实例化方法 String 类的两种实例化方式的区别 String 类对象的比较 Stirng 类对象的使用分析 /* 1.String 类的两种实例化方式的区别 ...
随机推荐
- Raw-OS互斥的源代码分析的量的Mutex
作为分析的内核版本2014-04-15,基于1.05正式版.blogs我们会跟上的内核开发进度的最新版本,如果出现源代码的目光"???"的话,没有深究的部分是理解. Raw-OS官 ...
- 第十九章——使用资源调控器管理资源(2)——使用T-SQL配置资源调控器
原文:第十九章--使用资源调控器管理资源(2)--使用T-SQL配置资源调控器 前言: 在前一章已经演示了如何使用SSMS来配置资源调控器.但是作为DBA,总有需要写脚本的时候,因为它可以重用及扩展. ...
- 设计Kafka的High Level Consumer
原文:https://cwiki.apache.org/confluence/display/KAFKA/Consumer+Group+Example 为什么使用High Level Consumer ...
- Eclipse+超快速的模拟器Genymotion开展Android申请书(第一步:安装和配置Genymotion)
一.安装和配置Genymotion (1)因为Eclipse自带SDK模拟器,慢启动,别说 今天给大家介绍一个更快速的模拟器Genymotion (2)第一次去Genymotion在官方网站上注册一个 ...
- OC本学习笔记Foundation框架NSString与NSMutableString
一.NSString与NSMutableString 相信大家对NSString类都不陌生.它是OC中提供的字符串类.它的对象中的字符串都是不可变的,而它的子类NSMutable ...
- android4.4组件分析--service组件-bindService源代码分析
6.1.1. bindService 由于有前面分析startService的代码实现过程,则对于bindService的代码分析就不用那么具体介绍,在介绍流程的同一时候更关注一些细节上的部分. ...
- 使用JS意识到自己主动提交表单
今天将需要chat集成到客户的网站上去,注册用户链接登录这个网站后点击实现网站直接登录chat向上.我不停chat原来的登录界面,采纳JS当页面跳转技术,随着时间的推移自己主动填写表格.自己主动提交表 ...
- 百度echarts扇形图每个区块增加点击事件
效果图:操作人员要求 :我想看这个扇形图对应的 页面信息,给我加个链接跳转:原先的chart.js发现没有api,后来改用百度的echart.js <!DOCTYPE html> < ...
- 分布式中使用Redis实现Session共享(转)
上一篇介绍了如何使用nginx+iis部署一个简单的分布式系统,文章结尾留下了几个问题,其中一个是"如何解决多站点下Session共享".这篇文章将会介绍如何使用Redis,下一篇 ...
- socket抓取网页
#include <iostream> #include <string> #include <netdb.h> #include <stdio.h> ...