上面的main方法中,map对象只是被创建并没有初始化,只是在前面创建了一个Map类的指针但并没有告诉系统具体指向,也就是map的值为null。
如以下方式:
static Map map;
public static void main(String[] args)
{
map=new Map();
mapseach();
}
程序就可以正常运行。
这两种创建对象的方法都是可以的。第一种在方法外创建就是作为一个类的属性,这个时候这个对象的生存周期是相当长的,你可以在一个方法中初始化后在其他方法中继续调用,其他方法对其造成的修改会都会影响到下一次调用的结果。甚至可以在其他类中调用这个变量。当然如果调用到的是没有初始化的对象一样会报空指针。
后一种方式是在方法中创建对象进行 *** 作,这时候这个对象的生存周期只限制于这个方法。每次调用这个方法的时候都会重新创建一个这样的对象。想将这个对象拿出去只有在创建后用set方法或者是使用return 返回。
例如:
Map map=new Map();
mapseach();
//假设OtherObj对象有setMap方法,使用set方法取出map对象
OtherObjsetMap(map);
或者就写成:
public Map getMap(){
Map map = new Map();
return map;
}
此外,static标记表示这个对象是类共有的,调用的时候甚至不需要创建你这个类的对象直接通过类名就可以调用出来。例如jdk中的javaawtColor类里面可以直接取出一些特定的颜色,只需要调用ColorRED等方法即可。不需要另外创建Color对象
可以用java编写
微信小程序提供了很丰富的组件和接口,他带了一套半Vue半React的“语言”,开发如果你是前端正好又熟悉Vue或React的话,那么就是你的菜。
首先明确你要写的MenuBar类怎么写,看看上面的代码比较混杂,上面看到想要加入还有JFrame类的属性,比较不科学,基本逻辑是先有Frame,在Frame上添加菜单栏,在菜单栏上添加菜单,将Frame,菜单栏,菜单几种不同的部件分成模块,这样才好分离出每个部件的代码。上题中首先是读取了一个名为menu的文本,然后分别把每一行都赋值给String对象s,之后通过第二个while循环给每个ID,name,price赋值,这里ID,名称,价钱已经都被赋值了。你只需要用输出语句输出结果就可以了:for(int j=0;j<i;j++) Systemoutprint(ID[j]+" " ); Systemoutprintln(); for(int j=0;j<i;j++) Systemoutprint(name[j]+" " ); Systemoutprintln(); for(int j=0;j<i;j++) Systemoutprint(price[j]);欢迎分享,转载请注明来源:内存溢出
评论列表(0条)