重拾JAVA DAY1

目录

JAVA中输出双引号和单引号的区别:

无法从静态上下文中引用非静态变量,非静态方法”原因及解决


JAVA中输出双引号和单引号的区别:

一、引用的数据类型不同

单引号的数据是char类型,如char[] arr={'a','b'}; 为char类型。

双引号的数据是String类型,如String[] arr = {"a","b","c"}; 为string类型。

二、调用的方法不同

单引号不能直接对定义的数据调用方法。

双引号可以调用s.charAt(0);等方法。

三、定义的格式不同

单引号定义数据时引号内只能有一个字母,数字,只能存储一个字符。

双引号定义数据时引号内可以是一个,也可能是多个字母,汉字等,即字符串。可以存储0个或多个字符,其实string类型就是char类型的数组表现形式。

四、引用的数据数量不同

单引号只能引一个字符(表示单个字符)。

双引号可以引  0  个及其以上的字符(引用字符串)如 String c = "abc"、String d="a"和char d=‘a’

无法从静态上下文中引用非静态变量,非静态方法”原因及解决

 

1.原因
(1)用static修饰的方法为静态方法,修饰变量则为静态变量,又分别叫做类方法或者类变量。这些从属于类,是类本身具备的,没有实例也会存在。

(2)而非静态方法和变量的存在依赖于对象,是对象的属性,需要先创建实例对象,然后通过对象调用。

所以怎么能轻易地 在一定存在的静态上下文中,引用不一定存在的非静态变量or方法 呢?

2.解决

//方法一:如下,实例化一个对象sort,然后才能在静态方法中调用非静态方法Sort()!

//方法二:直接将Sort声明为静态,即 static void Sort(int[] numbers)...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值