Да хватит вам о Java. Специально открыл Полное руководство по Java от Герберта Шилдта, нет как таковой глобальной области в Java, т.к. это не вписывается в строгую объектно-ориентированную модель Java. Есть 2 основные области видимости - определенные классом и методом. Да и вообще области видимости переменных в Java сильно отличаются от PHP. В Java КАЖДЫЙ блок имеет свою область видимости.
Еще разочек: На это я тебе ответил: Речь не о том кто там использует, а кто нет, а то, что-это две разные вещи. И если этого не понимаете, то возмущения неуместны. Верно. Вообще, сравнивать языки "глупость". Фантазировать то ты умеешь. А на деле? Делал?
Вот просто скрипт, сделал по короче, чтобы посмотреть быстрее: Код (PHP): package mp3; import eventlisteners.ActionListeners; import eventlisteners.ChangeListeners; import eventlisteners.MouseListeners; import eventlisteners.MouseMotionListeners; import graphics.ComponentAdapters; import graphics.JPanels; import interfaces.Mp3Interface; import java.awt.*; import java.awt.event.MouseEvent; import java.util.logging.Logger; import javax.swing.*; import utils.*; public class Mp3 extends JFrame implements Mp3Interface { private static final long serialVersionUID = 1L; private static final Logger LOG = Logs.logger(Mp3.class); public static final JFileChooser JFileChooser = new JFileChooser(); public static final MP3Player MP3Player = new MP3Player(); private final JPanel JPanel = new JPanels(Jvm.jpanel("root"), "newRootPane"); private static boolean rootPaneClick; private static Point frameDrag, frameLoc; private static final JSlider sliderVolume = new JSlider(), sliderPlay = new JSlider(); private static JToggleButton JToggleButton = new JToggleButton(); private static JMenuItem openPlayList, savePlayList, exitPlayer; private GroupLayout jPanelLayout = new GroupLayout(Jvm.jpanel("background")), rootPaneLayout = new GroupLayout(this.JPanel), listPanelLayout = new GroupLayout(Jvm.jpanel("list")), playPanel = new GroupLayout(Jvm.jpanel("media")); private static final JScrollList JScrollList = new JScrollList("JScrollPlayList"); private final JMenuBar JMenuBar = new JMenuBar(); public Mp3() { } public Mp3(final String title) { super(title); this.initComponents(); } private void initComponents() { this.jbutton(); this.jlabel(); this.jpanel(); this.jframe(); } //Вырезано @Override public void jlabel() { Jvm.jlabel("favicon", Utils.imageIcon(Config.FAVICON)).setPreferredSize(new Dimension(17, 17)); Jvm.jlabel("title", this.getTitleJFrame(), null, Font.BOLD, 11, null); } @Override public void jpanel() { Jvm.jpanel("background", this.jPanelLayout).setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.decode(Config.BORDER_COLOR))); Jvm.jpanel("leftRoot", new FlowLayout(FlowLayout.LEFT, 3, 0)).setPreferredSize(new Dimension(Short.MAX_VALUE - 130, 16)); Jvm.jpanel("rightRoot", new FlowLayout(FlowLayout.RIGHT, 1, 1)).add(Jvm.jbutton("minimize")); Jvm.jpanel("navigation", new FlowLayout(FlowLayout.RIGHT,10,0)).setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.decode(Config.BORDER_COLOR))); Jvm.jpanel("display", new BoxLayout(Jvm.jpanel("display"), BoxLayout.Y_AXIS)).setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.decode(Config.BORDER_COLOR))); Jvm.jpanel("list", this.listPanelLayout); Jvm.jpanel("media", this.playPanel).setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.decode(Config.BORDER_COLOR))); this.jpanelOpaque(); this.JPanel.addMouseListener(new MouseListeners(this.JPanel, "pressedSetPoint")); this.JPanel.addMouseMotionListener(new MouseMotionListeners(new Object[]{this, this.JPanel}, "panelDraggedFrame", "arrayObject")); Jvm.jpanel("navigation").add(Jvm.jbutton("addelement")); Jvm.jpanel("navigation").add(Jvm.jbutton("removeelement")); Jvm.jpanel("navigation").add(this.JMenuBar); Jvm.jpanel("leftRoot").add(Jvm.jlabel("favicon")); Jvm.jpanel("leftRoot").add(Jvm.jlabel("title")); } //Вырезано @Override public void jframe() { super.addMouseListener(new MouseListeners(this, "pressedFrame")); super.addMouseMotionListener(new MouseMotionListeners(this, "frameMovedDragged")); super.addKeyListener(new KeyMediaPlayer()); super.setMinimumSize(new Dimension(Config.JFRAME_MIN_WIDTH, Config.JFRAME_MIN_HEIGHT)); super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); super.setUndecorated(true); super.addComponentListener(new ComponentAdapters(this)); super.setIconImage(Utils.images(Config.FAVICON)); this.newRootPane(); final Container Container = super.getContentPane(); Container.setPreferredSize(new Dimension(Config.JFRAME_START_WIDTH, Config.JFRAME_START_HEIGHT)); Container.setBackground(Color.decode(Config.BACKGROUND_COLOR)); final GroupLayout containerLayout = new GroupLayout(Container); Container.setLayout(containerLayout); super.setContentPane(Container); containerLayout.setHorizontalGroup( containerLayout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(GroupLayout.Alignment.TRAILING, containerLayout.createSequentialGroup() .addGap(5) .addComponent(Jvm.jpanel("background"), GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGap(5))); containerLayout.setVerticalGroup( containerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addGroup( containerLayout.createSequentialGroup() .addGap(5) .addComponent(Jvm.jpanel("background"), GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGap(5))); super.pack(); super.setLocationRelativeTo(null); super.setVisible(true); } //Вырезано public static Point getLocationOnScreen(final MouseEvent MouseEvent, final JFrame JFrame) { final Point Point = MouseEvent.getPoint(), location = JFrame.getLocationOnScreen(); return new Point((int) (location.getX() + Point.getX()), (int) (location.getY() + Point.getY())); } public static Point getFrameDrag() { return Mp3.frameDrag; } public static void setFrameDrag(final Point Point) { Mp3.frameDrag = Point; } public static Point getFrameLoc() { return Mp3.frameLoc; } public static void setFrameLoc(final Point Point) { Mp3.frameLoc = Point; } public static void setRootPaneClick(final boolean rootPaneClick) { Mp3.rootPaneClick = rootPaneClick; } public static boolean getRootPaneClick() { return Mp3.rootPaneClick; } } Я получил первое место по разработке этого "MP3" плеера у себя в группе, выйграл викторину. Но это было уже давно и уже мне он не нужен. Это первая моя была программа =) Я только начинал изучать и решил написать =)
Круто. А у меня всего лишь три научных работы, посвященные разработке алгоритмов искусственного интеллекта, ориентированных на работу в нестандартных условиях без внешнего сигнала. То есть модель восприятия ситуации, основанная только на опыте "сущности", полученного и обрабатываемого так, как его получал и обрабатывал бы человек, без этих вот "наш робот использует GPS, чтобы ориентироваться в здании". На сим предлагаю застегнуть ширинку и не переносить образ собеседника, составленный в своей голове по его постам на форуме, помноженный на негативное и заведомо пренебрежительное отношение к нему на реального человека, потому что можно промахнуться в оценках.