Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Работа со строками




Переменные this и super

Область видимости переменных

Если объявляется переменная, то она доступна от точки объявления до конца блока, в котором она объявлена. Во внутреннем блоке видны переменные, объявленные во внешнем блоке, но не наоборот. Если переменные объявляются с одинаковыми именами во внутреннем и внешнем блоке, то во внутреннем блоке внешнее имя скрыто внутренним переопределением, то есть во внутреннем блоке видно только внутреннее объявление переменной.

 

Если необходимо обратиться к элементам собственного класса, то используется переменная this. Доступ к super-классу или родительскому классу осуществляется при помощи переменной super (если как переменная, то без (); если как конструктор, то super();).

Использовать такую переменную удобно, если в производном классе используется переопределённый метод, в котором используется код исходного метода. Часто переменная super используется для вызова конструктора базового класса в конструкторе производного класса.

Пример:

 

class my_class2 extends my_class1

{ ………….

public static void f1(int x, int y)

{ …………..

super.f1(x,y);

………… }

public my_class2(String str)

{ super(str1);

……….}

}

 

super и this неприменимы в классе с модификатором static.

Пример:

 

class MyClass

{ String s;

int i;

void f1(char c)

{ this.i=3; } //можно i=3

}

 

this используется в методах при обращении к элементам этого же класса.

 

 


 

Тема 4. Основы ввода/вывода. Работа со строковыми данными

 

Для работы со строками определен класс String. Он определен в стандартной библиотеке Java в пакете java.lang (этот пакет импортируется по умолчанию).

Конструкторы:

 

public String(); //создает пустую строку

public String(char value[ ]); //создает строку из массива символов

public String(byte bytes[ ]); //создает строку из массива байтов

 

Пример:

 

String str = new String(“ Какая-то строка”);

можно также записать

String str = “Какая-то строка”;

 

Для строк определена операция сложения, которая означает конкатенацию строк. Определена операция сложения с числом: сначала число преобразуется в строку, а потом соединяются строка с числом. Определена операция сложения строки с любым объектом. Для объекта вызывается метод toString(), затем вызывается конкатенация строк.

Пример:

 

System.out.println(“Ошибка “+e.toString);

 

Методы для работы со строками:

 

public int compareTo(String anotherString); //этот метод сравнивает 2 строки

public int indexOf(int ch); //ищет индекс в строке

public int indexOf(String str); //ищет указанную строку в строке

public int length(); //возвращает длину строки

public String subString(int beginIndex, int endIndex); //выделяет подстроку из

// строки

public String trim(); //удаляет из строки начальный и конечный пробелы

public char charAt(int index); //выбирает из строки символ с индексом index

public boolean equals(Object str); //проверяет равенство строк

 

Лекция 5

Пример: ……….

 

public static void main(String args[])

{ String strOb1 = “Первая строка”;

String strOb2 = “Вторая строка”;

char c;

c = strOb1.charAt(3);

System.out.println(c);

if(strOb1. equals(strOb2)

System.out.println(“Равны”);

else System.out.println(“Не равны”);

if(args.lenght()<0)

System.out.println(“Введите параметр”);

}

 




Поделиться с друзьями:


Дата добавления: 2014-12-25; Просмотров: 409; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.