Как переводится слово fun

Enjoy learning English online with Puzzle English for free

как переводится слово fun

Чтобы разговаривать как native нужно не только знать на зубок всю грамматику и иметь приличное произношение, но и пополнять свой багаж знаний устойчивыми английскими выражениями и фразами, которые носители языка используют в речи каждый день.

В этой статье мы расскажем, какие бывают устойчивые выражения в английском языке, дадим их перевод и расскажем, откуда взялись некоторые из них.

Многим из вас знакомы такие выражения, как a bit (немного), as a rule (как правило), go on (продолжать) и другие. Именно о подобных фразах и пойдет речь в сегодняшней статье.

Английские устойчивые выражения — это не совсем идиомы, о которых мы подробно писали в этой статье, а, скорее, словосочетания с артиклями, предлогами и фразовыми глаголами. Зачастую эти выражения нельзя перевести дословно или они не подчиняются общепринятым правилам, поэтому просто нужно запомнить их такими, какими они закрепились в английском языке.

В целом, устойчивые выражения в английском можно разделить на несколько групп: это фразы с предлогами и глаголом, существительным или прилагательным, выражения с определенным или неопределенным артиклем и просто устойчивые фразы, сформировавшиеся в языке со временем.

Взять к примеру фразу «You wish», которая имеет эквивалент в русском языке «еще чего, ага сейчас, разбежался». Обычно так саркастично отвечают в ответ на какую-то просьбу.

— Will you buy me a new car for Christmas?
— Yeah, you wish!

— Ты купишь мне новую машину на Рождество?
— Ага, ещё чего!

А задумывались ли вы как перевести на английский язык часто встречающееся в русской речи «не парься»? Легко и просто: no sweat (от слова «пот»). — I can’t meet you this Friday, are we okay?
— Yes. No sweat, Mike! — Я не смогу встретиться с тобой в эту пятницу, без обид?
— Да. Не парься, Майк!

Фраза cut to the chase, которую можно перевести как «сразу к делу», имеет довольно интересную историю и пришло в разговорную речь из киноиндустрии.

Cut — это монтажная склейка отснятого материала, а chase — погоня, которые раньше были популярны в фильмах и считались более важными, чем скучные диалоги.

Так что при пост-монтаже режиссер смотрел материал и вырезал (cut) ненужные сцены, говоря о том, что нужно перейти сразу к погоне (to the chase). Так фраза стала популярной сначала на съемочной площадке, а затем и в разговорной речи.

А вот выражение pull someone’s leg (разыграть кого-то, пошутить) стало популярным в Англии в 18 веке. Дело в том, что улицы были тогда довольно грязными, и в те времена распространенной шуткой было подставить кому-то под ноги трость или ухватить человека палкой с крюком за лодыжку, чтобы тот упал в грязь. С тех пор и повелось, что подшутить над кем-то — это дословно «потянуть кого-то за ногу».

Есть предположение, как переводится фраза «Go Dutch»? «Пойти по-голландски» означает разделить с кем-то счет во время свидания. Выражение произошло от популярных голландских дверей, которые разделены на две одинаковые части. Так что если кто-то говорит вам, что «We’ll go Dutch if you want» — это значит, что «Мы можем заплатить поровну, если хочешь».

Многие из выражений уже приобрели устойчивый характер. Например, be in error переводят как «ошибаться», а не дословно «быть в ошибке». Так же и break open мы переводим как «распахнуть» (окно), а be in effect — «в силе» (об уговоре).

Широко известны и такие фразы, как all day long (весь день напролет) и all night long (всю ночь напролет), day in day out (целыми днями), go to waste (идти насмарку), good fortune (счастливый случай), hurry up (поторапливайся), it doesn’t make sense (это не имеет смысла), point of view (точка зрения), so far (до сих пор), time will tell (время покажет), wait and see (поживем-увидим) и другие.

Давайте рассмотрим другие английские устойчивые выражения с переводом. Например, с неопределенным артиклем a (an).

  • at a glance — моментально, с первого взгляда
  • as a matter of fact — в сущности, фактически
  • as a result — в итоге, в результате
  • as a rule — обычно, как правило
  • a great deal — множество
  • a great many — несметное количество, очень много
  • a little bit — немного
  • а number of — ряд, много
  • to be at a loss — находиться в недоумении
  • to have a good time — провести хорошо время
  • to take a seat — садиться
  • to tell a lie — лгать

Многие устойчивые выражения связаны с глаголом to have:

  • to have a mind to do something — намереваться сделать что-либо
  • to have a cold — простудиться
  • to have a look — посмотреть
  • to have a smoke — покурить
  • to have a rest — отдыхать

В словосочетаниях глагольного типа можно часто встретить нулевой артикль. Например, в выражении «to take care» (заботиться, беречь). Ее обычно произносят в конце встречи при неформальном общении: Take care (of yourself)! (Береги себя!).

  • to be in bed — болеть
  • to be home — пребывать дома
  • to be at school — находиться в школе
  • to be in town — находиться в городе
  • to be on holiday — быть в отпуске
  • to go by air — лететь самолетом
  • to go home — идти домой
  • to go to bed — идти спать
  • to go to town — ехать в город
  • to leave school — бросать обучение в школе
  • to leave town — покидать город
  • to make use of — использовать
  • to take part — принимать участие
  • to take place — иметь место, происходить

At

  • at all — совсем
  • at all times — во все времена
  • at any cost — во что бы то ни стало
  • at arm’s length – на расстоянии вытянутой руки
  • at best — в лучшем случае
  • at breakfast — за завтраком
  • at the corner — в углу
  • at the end — в конце
  • at first — сначала
  • at first sight — с первого взгляда  
  • at home — дома
  • at last — наконец-то
  • at least — по крайней мере
  • at the age of — в возрасте
  • at the beginning — в начале
  • at the moment — в данный момент
  • at the same time — в то же время
  • at times — иногда
  • at will — по желанию

By

  • by accident — непреднамеренно
  • by and by — вскоре
  • by and large — в общем и целом
  • by bus — автобусом (ехать)
  • by chance — случайно  
  • by end of — к концу
  • by example — по примеру (образцу)
  • by far — значительно, явно
  • by heart — наизусть  
  • by sea/land/air — морем / по суше / по воздуху (о путешествиях)
  • by means of — посредством
  • by mistake — по ошибке  
  • by no means — ни в коем случае не  
  • by the way — кстати, между прочим
  • by then — к тому времени
  • by the rules, by the book — по правилам
  • day by day — с каждым днем, день ото дня  

For

  • for a change — для разнообразия
  • for about — приблизительно
  • for ages — целую вечность
  • for all we know — насколько нам известно
  • for around — приблизительно
  • for better or worse — к лучшему это или нет; так или иначе
  • for free — бесплатно
  • for fun — ради забавы
  • for good — навсегда
  • for granted — как должное
  • for life — на всю жизнь
  • for luck — на счастье
  • for nothing — зря, даром
  • for now — пока что
  • for sale — на продажу  
  • for sure — несомненно
  • for the best — на благо
  • for up to — вплоть до
  • for a walk — на прогулку
  • for a while — на какое-то время

Устойчивые выражения с предлогом for запомнить достаточно легко, ведь многие из них переводятся вместе с ним такими предлогами, как «на», «для», «за», «в», «к» и другими.

From

  • from A to B — из точки А в точку Б  
  • from bad to worse — от плохого к худшему
  • from here — отсюда
  • from morning to night — с утра до ночи
  • from my point of view — с моей точки зрения
  • from now on — отныне
  • from place to place — с места на место
  • from there — оттуда
  • from time to time — время от времени
  • from under — из-под

In

  • in a draw — вничью
  • in a little while — скоро
  • in a loud voice – громким голосом
  • in a sense — в некотором смысле
  • in a way — в некотором отношении
  • in about — примерно через
  • in addition to — вдобавок к
  • in answer to — в ответ на  
  • to be in control of – контролировать, управлять  
  • in brief — в двух словах, коротко
  • in cash — наличными  
  • in conclusion — в заключение
  • in danger — в опасности  
  • in fact — фактически
  • in favour of – в защиту, в поддержку, в пользу кого-либо (чего-либо)  
  • in front of — перед
  • in general — в общем
  • in haste — в спешке  
  • in itself — по своей сути
  • in nature — по происхождению
  • in no time — немедленно
  • in no way — никоим образом
  • in other words — другими словами
  • in place of — вместо
  • in short — короче говоря
  • in time — вовремя  
  • in this respect — в этом отношении
  • in vain — напрасно
ЭТО ИНТЕРЕСНО:  Что должен знать ребенок в первом классе по английскому языку?

On

  • on behalf of — от лица, от имени (кого-либо)
  • on condition that — при условии, что   
  • on my own — самостоятельно  

Источник: https://puzzle-english.com/directory/fixed-expressions

Разница между Fun, Funny, Ridiculous

как переводится слово fun

Слова fun и funny часто путают из-за внешнего сходства, а funny и ridiculous из-за сходства в значении. Давайте рассмотрим подробнее, как правильно используются эти “смешные” слова.

:

Разница между Fun и Funny: весело – это не то же, что и смешно

  • Funny – смешной, забавный.

Слово funny используется как прилагательное, его основное значение – смешной, забавный, вызывающий смех, то есть то, из-за чего можно посмеяться.

You are so funny! – Ты такой смешной!

This joke is not funny. – Эта шутка – не смешная.

It was a funny movie. – Это был смешной фильм.

It’s not funny! – Это не смешно!

  • Fun – веселье, радость, удовольствие.

Слово fun – это существительное, его значение – веселье, радость, удовольствие, приятное времяпрепровождение. Эти вещи не обязательно связаны со смехом.

We play games for fun. – Мы играем в игры ради удовольствия.

There is no fun in playing basketball alone. – Нет никакого удовольствия в том, чтобы одному играть в баскетбол.

Существительное fun часто встречается в выражениях:

  • to have fun – веселиться, развлекаться.

Let’s have fun! – Давайте повеселимся!

  • make fun of smb, smt – смеяться (потешаться) над кем-то, чем-то

Don’t make funof me! – Не смейтесь надо мной!

Fun также используется как прилагательное в значении “интересный, приносящий удовольствие”, а также “веселый”, но не в значении “смешной, забавный”, а в значении “интересный, увлекательный”.

Teaching could be a fun thing to do. – Преподавание может быть интересным занятием.

This game is so fun! – Эта игра такая веселая (интересная)!

Ключевая разница между fun и funny в том, что fun НЕ используется в значении “смешной”. Возьмем предложение:

This game is fun.

Оно значит: “Эта игра интересная (увлекательная, веселая)”, но не “смешная”. Иначе говоря, игра приносит удовольствие, а не вызывает смех. Понятно, что удовольствие может включать и смех (а может и не включать), но все же это два разных понятия. Fun – это что-то интересное, приятное, а funny – то, из-за чего хочется смеяться.

Другой пример:

This weekend was really fun.

Оно значит “Эти выходные были действительно веселыми (интересными)”, но не “смешными”.

Разница между Funny и Ridicuous

Прилагательные funny и ridiculous в определенном контексте могут переводиться как “смешной”, но их значения отличаются. Вот эти отличия:

  • Funny – смешной, забавный, вызывающий смех, то, ИЗ-ЗА ЧЕГО хочется посмеяться.
  • Ridiculous – смешной, дурацкий, абсурдный, то, НАД ЧЕМ хочется посмеяться.

Слово ridicuouls образовано от существительного ridicule – насмешка, поэтому ridiculous буквально значит “заслуживающий насмешки”, или смешной, но по-глупому смешной.

Oh, you too reading this ridiculous book! – О, вы тоже читаете эту дурацкую книгу!

You look ridiculous in this suit. – Ты выглядишь глупо в этом костюме.

Don’t be ridiculous – Не глупи / не смеши людей / не будь дураком.

Обратите внимание, ridiculous не всегда подразумевает смех, веселье, как, кстати и “смешной” в русском языке. Возьмем пример:

This is a ridiculous accusation! I am not a criminal!

Его можно перевести как “Это абсурдное обвинение! Я не преступник!” Ничего смешного в прямом смысле здесь не подразумевается. Возьмем другой пример. Человека обвиняют в преступлении, он в негодовании восклицает:

This is ridiculous! – Это смешно!

И в русском варианте, и в английском под “смешной/ridiculous” подразумевается абсурд, нелепость, а не источник смеха.

Funny в значении “странный”, “непонятный”

Слово funny может также использоваться в значении, далеком от всех рассмотренных выше. Прилагательное или наречие funny может значить странный, непонятный, необычный, какой-то не такой.

Примеры с прилагательным:

That’s funny, I’m sure I locked the door. – Странно, я уверен, что запирал дверь на замок.

A funny thing happened to me today. – Странная (непонятная) вещь сегодня со мной произошла.

Примеры с наречием:

What’s wrong with your friend? He looks funny. – Что с твоим другом? Он странно выглядит.

I felt funny after taking that pill. – Я чувствовал себя как-тонепонятно после того, как принял ту таблетку.

Источник: https://langformula.ru/fun-funny/

Разница между Fun и Funny

как переводится слово fun

Одной из самых распространенных лексических ошибок является неправильное использование таких слов как «fun» и «funny». Давайте разберем эти слова, чтобы никогда их больше не путать между собой.

FUN

Fun может выступать как в роли существительного, так и в роли прилагательного.

Перевод будет таким:

1) веселье, удовольствие, забава;

2) приятный, забавный (но не смешной!).

В первом случае мы употребляем «fun» ко всему тому, от чего получаем удовольствие и радость (тут уже дело вкуса: кто-то в восторге от 5-ти километровых кроссов по утрам и свежевыжатого сока, а для кого «fun» — это вечеринки и живая музыка).

Самое распространенное английское пожелание «to have fun» переводится как «хорошо проведи время», «повеселись».

А в роли прилагательного «fun» относится к тому, что кажется нам забавным, милым и даже странным, но ни в коем случае не смешным.

E.g.:

Her birthday party was fun!  — У нее была классная днюха!

We had fun during our Turkish weekend. – Мы здорово провели выходные в Турции.

I have fun when my husband cooks dinner. – Я кайфую (мне нравится), когда муж готовит ужин.

You are a fun guy! – Ты замечательный парень!

FUNNY

Тут уже все намного проще: funny применяется ко всему тому, что может вызвать у вас от еле уловимой улыбки до откровенного смеха от души, т.е. к чему-то смешному и «угарному».

E.g.

You a funny dude. – Ты смешной чувак.

Peter told me funny story. – Питер рассказал мне смешную историю.

It’s not funny. – Это не смешно.

What’s so funny? – Что смешного?

NB! Правда и здесь есть один нюанс: в паре с такими словами как «to feel» (чувствовать), «to look» (смотреть), «to taste» (пробовать), «to smell» (пахнуть), «to seem» (казаться), «to hear» (слышать) funny переводится как «странный».

E.g.

This soup tastes funny. – Суп какой-то странный на вкус.

He seems funny. – Он выглядит странным.

Вот в принципе и все!

И для закрепления короткое визуальное объяснение на английском:

Источник: http://eduengl.ru/poleznye-slova/osobennosti-upotrebleniya/308-fun-funny.html

Глаголы to have и have got

Глагол «to have» (владеть) в английском языке используется в довольно различных ситуациях и на русский язык может переводиться по-разному. В этой статье Вы узнаете основные ситуации, когда используют данный глагол. Также Вы узнаете про глагол «have got«, что тоже означает «владеть».

Глагол to have

  • To have – основной глагол, использующиеся для указания владения (собственности) чем-либо (не только материальным ), свойства чего-либо (или его характеристики), родство или связь, например качества одной вещи по отношению к другой:

I have a cat. → У меня есть кошка.
I have a lot of free time these days. → Сейчас у меня (есть) много свободного времени.

Dmitry has a sister in France. → У Дмитрия есть сестра во Франции.

He has three books by Hemingway. → Он имеетнего есть три книги Хемингуэя.
She has fair hair. → У неё светлые волосы.

  • Глагол «to have» также употребляется для обозначения большого числа действий, вот некоторые из них (главное понять смысл, не пугаться и думать «как же это перевести»):

have a bath, wash, shower, etc → принимать ванну (лежать в ней), стирать, принимать душ (под струёй воды) и т.д.
have breakfast, lunch, dinner → завтракать, обедать, ужинать.

have fun → хорошо проводить время, «получайте удовольствие».
have time available → иметь на что-то время.

have questions → иметь вопрос.
have a party → проводить вечеринку.

have a walk, hike, ride, etc. → прогуливаться, быть в походе, ездить верхом и т.д.
have a discussion, fight, argument etc. → обсуждать, бороться, утверждать

ЭТО ИНТЕРЕСНО:  Как по английски кактус

Примеры:

I usually have breakfast at seven o’clock. → Обычно, я завтракаю в семь часов.

Anna is having a bath at the moment (время Present Continuous). → Анна сейчас принимает ванну.

  • Употребляется в качестве модального глагола. Его легко определить по конструкции «have to«. Здесь он выражает требование выполнить(ять) какое-либо рутинное действие (но не всегда). Часто он используется носителями языка, в качестве действия, которое несёт ответственность, обязанность.

Эта форма «have» также имеет похожее значение с модальным глаголом «must» — в разговоре об обязанностях носители языка предпочитают использовать именно его (например: I must talk to Peter. It’s important). «

Глагол «must» используют, когда хотят сказать об очень серьёзных для говорящего (или если принято их считать таковыми) обязанностях (например: I must feed my family).

Несколько примеров:

They have to work hard on Saturdays (рутина для них). → По субботам они должны тяжело работать.
I have to return books to the school library. → Я должен вернуть книги в школьную библиотеку.

I must be rich (очень важно для говорящего). → Я должен быть богатым.
I must to defend my homeland. → Я должен защищать свою родину.

Глагол have got

  • Глагол «have got» больше свойственен британскому английскому. Он также служит для указания владения (собственности) чем-либо (не только материальным ), свойства чего-либо (или его характеристики), родства или связи. Например:

He has got some friends in London. → У него есть несколько друзей в Лондоне

Annahas got three sisters. → У Анны есть три сестры.

I have got a new car. → У меня есть новая машина.

Американцы также порой употребляют «have got«, но чаще «gotten» или просто «(to) have» (считайте это аналогом / синонимом — так проще ).

  • Существенное отличие глагола «have got» от простого «to have» – это время, когда они используются. «О боже, снова заморочка какая-то» сейчас Вы подумали, наверное . Но здесь всё просто, «have got» используется только в Настоящем простом времени, а «have» может быть использован во всех временных формах. Например:

I had

Источник: http://english-da.ru/grammatika/have-and-havegot

Тексты (топики) на английском языке 5, 6 класс с вопросами. Часть 1

Тематические тексты (топики) для тех, кто изучает английский язык в школе (5-6 класс). Данные тексты на английском языке предназначены для повторения пройденных тем, развития  письменной и разговорной речи.

Вопросы к текстам могут быть использованы, как основа для диалогов. Слова и выражения в текстах соответствуют пройденной в этих классах лексике. К сайту подключен словарь. Чтобы узнать перевод незнакомого слова, нужно кликнуть по нему 2 раза.

  К текстам прилагаются списки слов для повторения по указанным ниже темам, а также задания по теме «Личное письмо».

Тексты (топики):

* * *

Текст 1. About Myself

My name is . I am years old.

I am in the th form. We learn different subjects but my favourite subject is

I live in . I have a mother, a father, a sister and a brother. My family is friendly and loving.

I am tall (short). My hair is straight and long. I have big brown eyes.

I have got many friends. My best friend is . We often spend time together. We to .

* * *

Текст 2. My Family and Me

My family is large. There are 6 of us: father, mother, my sister, two brothers and me. My family is friendly and loving.

My father’s name is . He is clever and kind. He is a doctor by profession.

My mother’s name is . She is busy and loving. She doesn’t work. She is a housewife.

My elder sister’s name is She is a very beautiful girl. Her hobby is singing.
My younger brother’s name is He is very active. He s sport.

My hobby is drawing. I to draw in my free time. Also I reading books. My favourite writer is

At the weekends all the members of our family spend time together. We go for a walk, visit museums, go to the cinema or to the theatre.

I love my family very much.

* * *

Текст 3. My Friends

Источник: http://englishinn.ru/tekstyi-topiki-na-angliyskom-yazyike-5-6-klass.html

О брендe

FUN — это радость и веселье. DAY – это день.

Теперь каждый ваш день будет полным радости, улыбок и веселья, стоит лишь заглянуть в магазины одежды для всей семьи FUNDAY*!

*Фа́ндэй

МИССИЯ FUNDAY

Радость в простых вещах!

ДЕВИЗ

Сделай день ярким!

ЦЕННОСТИ

Лёгкость, яркость, позитив, эмоции!

Магазины одежды для всей семьи

Планы развития

Первые магазины FUNDAY в России открыли свои двери в сентябре 2013 года. Сейчас FUNDAY – это уже более 130 розничных магазинов

В наших планах открытие магазинов FUNDAY в каждом крупном городе России! Мы хотим, чтобы каждый город присоединился к FUN – движению и каждая семья стала немножко счастливее!

FUNDAY – настроение твоего дня!

Mагазины

FUNDAY – это магазины яркой, доступной и практичной одежды для всей семьи!

Магазины FUNDAY обладают уникальной, заряжающей позитивом атмосферой, и предлагают современную и недорогую одежду на каждый день.

Отличительной особенностью FUNDAY является жизнерадостное оформление зала и витрин, комфортные условия для выбора, примерки и покупки одежды. Всё это с первой минуты создаёт позитивные эмоции и приятное впечатление от магазина!

Концепция и интерьер магазинов FUNDAY разработана известным британским брендинговым агентством, одним из признанных лидеров розничного дизайна.

Приходите в FUNDAY всей семьей, здесь вас всегда ждут позитивные эмоции и покупки, поднимающие настроение! Ищите FUNDAY в своем городе!

FUNDAY — радость в простых вещах!

Одежда FUNDAY – удобная и яркая!

Для взрослых и детей, готовых жить и одеваться играючи!

Главное в нашей коллекции – это яркий дизайн и практичность моделей при невысоких ценах. Качественные ткани, современный дизайн, выверенные силуэты и интересные цветовые решения — все это делает одежду FUNDAY разнообразной, легко комбинируемой и всегда актуальной!

FUNDAY запустил в России такие линейки как одежда для женщин и мужчин, коллекция для детей от 3 до 12 лет, домашняя одежда и белье, а также богатый ассортимент аксессуаров, включающий в себя сумки, ремни, платки и шарфики. Особое место в магазинах занимают джинсы!

Ассортимент FUNDAY

WOMEN:

FUNDAY предлагает множество идей для любого случая: прогулки по городу в романтических платьях или посиделки в кафе с небрежно накинутым на плечи шарфиком, широчайший выбор футболок и топов, удобные и практичные джемперы, толстовки и демисезонные куртки, а, может, вам больше нравятся сдержанные жакеты? Придумывайте свой новый образ и воплощайте его смело! Ведь это так легко, когда есть FUNDAY. FUNDAY – для тех, кто говорит «ДА» актуальным моделям и практичной одежде по приятным ценам!

MEN:

Практично? Комфортно? Универсально? Да, и это все про мужскую коллекцию FUNDAY! Обратите внимание на рубашки с необычной графикой или классические в клетку или полоску, а также разнообразные джемперы и толстовки! Теперь отправляемся мерять джинсы, и, если добавить к этому всевозможные варианты футболок с принтами, графикой и без, то Вы обеспечены зарядом хорошего настроения на весь день вперёд! FUNDAY – для тех, кто говорит «ДА» беззаботному шоппингу!

KIDS:

Поиграем? Озорные футболки и майки с забавными принтами. Яркие джемперы и сарафаны для принцесс. Стильные бейсболки, удобные шорты и джинсы для маленьких разбойников.

Устроим пляжный фестиваль или будем собираться в школу? Всё возможно с детской коллекцией FUNDAY! Мы легко заводим новых друзей, и нам, как и вам, нравятся солнечные краски и динамичные расцветки. FUNDAY – это всегда новая игра.

Каждый день одеваемся, играя! FUNDAY – для тех, кто говорит «ДА» весёлому настроению и новым открытиям!

FUN-команда!

FUNDAY планирует открытие магазинов в каждом крупном городе России, от Калининграда до Владивостока. Сейчас мы ищем людей, которые хотят получить уникальный опыт участия в новом проекте и профессиональное развитие. Мы создаём команду, в которую будут входить самые энергичные, позитивные, отзывчивые и открытые для всего нового люди!

Если всё это про вас, мы с удовольствием готовы предложить вам такие вакансии, как продавец-консультант, кассир, кладовщик, администратор и управляющий магазином.

По вопросам трудоустройства пишите на почту [email protected].

Источник: https://fundayshop.com/ru/ru/pages/about_brand/

Вызов кода Kotlin из Java

Код Kotlin может быть вызван из JAVA просто.

Свойства (Properties)

Свойство Kotlin компилируется в следующие Java элементы:

  • Метод getter, имя которого вычисляется путем добавления префикса get;
  • Метод setter, имя которого вычисляется путем добавления префикса set (только для свойств var);
  • Приватное поле с тем же именем, что и имя свойства (только для свойств с backing fields).

Например, var firstName: String компилируется в следующие объявления Java:

private String firstName; public String getFirstName () {     return firstName;} public void setFirstName (String firstName) {     this.firstName = firstName;}

Если имя свойства начинается с is, используется другое правило сопоставления имен: имя метода getter будет совпадать сименем свойства, а имя метода setter будет получено путем замены is на set. Например, для свойства isOpen, getter будетназываться isOpen() и setter будет называться setOpen(). Это правило применяется к свойствам любого типа, а не только к Boolean.

ЭТО ИНТЕРЕСНО:  Сколько в среднем стоит репетитор по английскому?

Функции уровня пакета (Package-Level Functions)

Все функции и свойства, объявленные в файле example.kt внутри пакета org.foo.bar, включая функции расширения,скомпилированы в статические методы класса Java с именем org.foo.bar.ExampleKt.

// example.ktpackage demo class Foo fun bar() { } // Javanew demo.Foo();demo.ExampleKt.bar();

Имя генерируемого JAVA класса может быть выбранно при помощи аннотации @JvmName:

@file:JvmName(«DemoUtils») package demo class Foo fun bar() { } // Javanew demo.Foo();demo.DemoUtils.bar();

Наличие нескольких файлов, имеющих одинаковое имя Java-класса (тот же пакет и одинаковое имя или аннотацию @JvmName),является ошибкой. Однако компилятор имеет возможность генерировать один Java класс фасада, который имеет указанное имя исодержит все объявления из всех файлов, которые имеют такое имя. Чтобы включить генерацию такого фасада, используйте аннотацию @JvmMultifileClass во всех файлах.

// oldutils.kt@file:JvmName(«Utils»)@file:JvmMultifileClass package demo fun foo() { }// newutils.kt@file:JvmName(«Utils»)@file:JvmMultifileClass package demo fun bar() { }// Javademo.Utils.foo();demo.Utils.bar();

Поля экземпляра (Instance Fields)

Если вам нужно представить свойство Котлина в качестве поля в Java, вам нужно добавить к нему аннотацию @JvmField.Поле будет иметь такую же видимость, что и базовое свойство.Вы можете добавить свойству аннотацию @JvmField,если оно имеет backing field , не является приватным, не имеет open, override или const модификаторов и не является делегированным свойством.

class C(id: String) { @JvmField val ID = id}// Javaclass JavaClient { public String getID(C c) { return c.ID; }}

Свойства с поздней инициализацией также отображаются как поля.Видимость поля будет такой же, как видимость сеттера свойства с поздней инициализацией.

Статические поля (Static Fields)

Свойства Kotlin, объявленные в именованном объекте или объекте-помощнике, будут иметь статические backing fields в этом именованном объекте или в классе, содержащем объект-помощник.

Обычно эти поля являются приватными, но они могут быть представлены одним из следующих способов:

  • @JvmField аннотацией;
  • lateinit модификатором;
  • const модификатором.

Аннотирование такого свойства с помощью @JvmField делает его статическим полем с той же видимостью, что и само свойство.

class Key(val value: Int) { companion object { @JvmField val COMPARATOR: Comparator = compareBy { it.value } }}// JavaKey.COMPARATOR.compare(key1, key2);// public static final field in Key class

Свойство с поздней инициализацией в объекте или объекте-помощнике имеет статическое backing field с той же видимостью, что и сеттер свойства.

object Singleton { lateinit var provider: Provider}// JavaSingleton.provider = new Provider();// public static non-final field in Singleton class

Свойства, аннотированные const (как в классах, так и на верхнем уровне), превращаются в статические поля в Java:

// file example.kt object Obj { const val CONST = 1} class C { companion object { const val VERSION = 9 }} const val MAX = 239

В Java:

int c = Obj.CONST;int d = ExampleKt.MAX;int v = C.VERSION;

Статические методы (Static Methods)

Как упоминалось выше, Kotlin представляет функции уровня пакета как статические методы.Kotlin также может генерировать статические методы для функций, определенных в именованных объектах или объектах-помощниках, если вы добавите аннотацию @JvmStatic к функции. Если вы используете эту аннотацию, компилятор создаст как статический метод во включающем классе объекта, так и метод экземпляра в самом объекте. Например:

class C { companion object { @JvmStatic fun foo() {} fun bar() {} }}

Теперь foo() является статическим методом в Java, в то время как bar() нет:

C.foo(); // works fineC.bar(); // error: not a static methodC.Companion.foo(); // instance method remainsC.Companion.bar(); // the only way it works

То же самое для именованных объектов:

object Obj { @JvmStatic fun foo() {} fun bar() {}}

В Java:

Obj.foo(); // works fineObj.bar(); // errorObj.INSTANCE.bar(); // works, a call through the singleton instanceObj.INSTANCE.foo(); // works too

Аннотацию @JvmStatic можно также применить к свойству объекта или объекта-помощника, сделав его методы getter и setter статическими элементами в этом объекте или классе, содержащем объект-помощник.

Видимость (Visibility)

Видимость в Kotlin представляется в Java следующим образом:

  • private элементы компилируются в private элементы;
  • private объявления верхнего уровня компилируются в локальные объявления пакетов;
  • protected остаются protected (обратите внимание, что java разрешает доступ к защищенным членам из других классов в том же пакете, а Kotlin-нет, поэтому классы Java будут иметь более широкий доступ к коду);
  • internal  объявления становятся public в JAVA. Члены internal классов проходят через искажение имен, чтобы усложнить случайное использование их из Java и позволить перегрузку для членов с одинаковыми сигнатурами, которые не видят друг друга в соответствии с правилами Kotlin;
  • public остаются public.

KClass

Иногда вам нужно вызвать метод Kotlin с параметром типа KClass. Автоматического преобразования из Class в KClass нет, поэтому вам нужно сделать это вручную, вызывая эквивалент свойства расширения Class.kotlin:

kotlin.jvm.JvmClassMappingKt.getKotlinClass(MainView.class)

Обработка столкновений сигнатур с @JvmName

Иногда у нас есть именованная функция в Kotlin, для которой нам нужно другое JVM-имя байтового кода. Самый яркий пример происходит вследствии стирания типа:

fun List.filterValid(): Listfun List.filterValid(): List

Эти две функции не могут быть определены вместе, потому что их подписи JVM одинаковы: filterValid(Ljava/util/List;)Ljava/util/List;. Если мы действительно хотим, чтобы они имели одно и то же имя в Kotlin, мы можем добавить одному (или обоим) аннотацию @JvmName и указать другое имя в качестве аргумента:

fun List.filterValid(): List @JvmName(«filterValidInt»)fun List.filterValid(): List

Из Kotlin они будут доступны с одинаковым именем filterValid, но из Java это будет filterValid и filterValidInt.

Этот же трюк применяется, когда нам нужно иметь свойство x вместе с функцией getX():

val x: Int @JvmName(«getX_prop») get() = 15 fun getX() = 10

Чтобы изменить имена созданных методов доступа для свойств без явно введенных геттеров и сеттеров, вы можете использовать @get:JvmName и @set:JvmName:

@get:JvmName(«x»)@set:JvmName(«changeX»)var x: Int = 23

Генерация перегрузок

Обычно, если вы пишете функцию Kotlin со значениями параметров по умолчанию, она будет видна в Java только как полнаясигнатура со всеми параметрами. Если вы хотите предоставить многократные перегрузки вызовам Java, можно использовать аннотацию @JvmOverloads.

Аннотации также работают для конструкторов, статических методов и т.д. Их нельзя использовать для абстрактных методов, включая методы, определенные в интерфейсах.

class Foo @JvmOverloads constructor(x: Int, y: Double = 0.0) { @JvmOverloads fun f(a: String, b: Int = 0, c: String = «abc») { }}

Для каждого параметра со значением по умолчанию это создаст одну дополнительную перегрузку, которая имеет этот параметр и все параметры справа от него в удаленном списке параметров. В этом примере будет создано следующее:

// Constructors:Foo(int x, double y)Foo(int x) // Methodsvoid f(String a, int b, String c) { }void f(String a, int b) { }void f(String a) { }

Обратите внимание, как описаны вторичные конструкторы, если класс имеет значения поумолчанию для всех параметров конструктора, то для него будет создан открытый конструктор без аргументов. Это работает, даже если не указана аннотация @JvmOverloads.

Проверенные исключения (Checked Exceptions)

Как мы уже упоминали выше, Котлин не имеет проверенных исключений.Таким образом, как правило, сигнатуры Java функций Kotlin не объявляют исключения. Поэтому если мы имеем такую функцию в Котлине:

// example.ktpackage demo fun foo() { throw IOException()}

И мы хотим вызвать её из Java и поймать исключение:

// Javatry { demo.Example.foo();}catch (IOException e) { // error: foo() does not declare IOException in the throws list // }

мы получаем сообщение об ошибке из компилятора Java, потому что foo() не объявляет IOException. Чтобы обойти эту проблему, используйте аннотацию @Throws в Kotlin:

@Throws(IOException::class)fun foo() { throw IOException()}

Null-безопасность (Null-safety)

При вызове Kotlin функций из Java никто не мешает нам передавать null{: .keyword} в качестве ненулевого параметра. Вот почему Kotlin генерирует проверки времени выполнения для всех публичных функций, которые ожидают непустые значения. Таким образом, мы немедленно получаем исключение NullPointerException в Java-коде.

Variant generics

Когда классы Kotlin используют вариативность на уровне объявления, есть два варианта того, как их использование видно из кода Java. Допустим, у нас есть следующий класс и две функции, которые его используют:

class Box(val value: T) interface Baseclass Derived : Base fun boxDerived(value: Derived): Box = Box(value)fun unboxBase(box: Box): Base = box.value

Наивный способ перевести эти функции в Java будет

Box boxDerived(Derived value) { }Base unboxBase(Box box) { }

Проблема в том, что в Kotlin мы можем сказать unboxBase(boxDerived («s»)), но в Java это было бы невозможно, потому что вJava класс Box является инвариантным по своему параметру T и, следовательно, Box не является подтипом Box . Чтобы заставить его работать на Java, нам нужно определить unboxBase следующим образом:

Base unboxBase(Box

Источник: https://kotlinlang.ru/docs/reference/java-to-kotlin-interop.html

I’m the GOAT, или Английский сленг для выживания в 2017 году

Hey, Dude! Тебе кажется, что ты учишь неактуальный (и даже устаревший) английский язык? Тогда лови подборку сочного живого английского сленга! Команда Lingualeo отобрала самые употребительные сленговые выражения из Интернет-пространства за последний год. Для этого нам “пришлось” посмотреть тонны сериалов и развлекательных шоу, а также конкретно залипнуть в социальных сетях.

Источник: https://corp.lingualeo.com/ru/2017/04/25/angliyskiy-sleng/

Понравилась статья? Поделиться с друзьями:
English House